我这段asp.net代码调试提示输入字符串错误是因为什么?
int sameid;
DateTime timenow = DateTime.Now;
int i = DataAccess.ExecuteSql("insert into K_ordermaster (PreparerID) values ('" + userid + "')");
if(i>0)
{
sameid=Convert.ToInt32(DataAccess.ExecuteScalar("Select SCOPE_IDENTITY()").ToString());我想得到我刚才插入表的最后一个id值 以备后面插入其他表用到这个关联的id
追问:可以给点意见吗?
答案:首先你这么做就有错误,SCOPE_IDENTITY()和插入T-SQL是关联的。你插入之后再读取就出错了!强烈不推荐这么写。PreparerID字段是int类型的话,values就不要加单引
即:
int i = DataAccess.ExecuteSql("insert into K_ordermaster (PreparerID) values (" + userid + ")");
int sameid;
var obj = DataAccess.ExecuteScalar("insert into K_ordermaster (PreparerID) values (" + userid + ");Select SCOPE_IDENTITY()");
if(obj == null)
sameid = 0;
else
sameid = (int)obj;
上一个:奇怪的ASP中的FOR语句测试,代码如下:
下一个:求在ASP.NET中实现 打印功能代码