首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

至少有一个参数没有指定值,该如何解决

2012-04-13 
至少有一个参数没有指定值string sqlStr update [user] set [isAdmin]1 where [ID]:idindexOleDbPa

至少有一个参数没有指定值
string sqlStr = "update [user] set [isAdmin]=1 where [ID]=:idindex";
 OleDbParameter[] parms ={ new OleDbParameter(":idindex", OleDbType.Integer,100) };
  //传ID
 parms[0].Value = info.isVerify; 

郁闷,哪里的错误

[解决办法]
数组初始化的语法错了吧:
OleDbParameter[] parms ={ new OleDbParameter(":idindex", OleDbType.Integer,100) };

应该象这样:
OleDbParameter[] parms = new OleDbParameter[] { new OleDbParameter(":idindex", OleDbType.Integer) };
[解决办法]
那是什么原因?难道是类型不匹配?

info.isVerify看这命名,象是个bool类型的值
[解决办法]
string sqlStr = "update [user] set [isAdmin]=1 where [ID]=:idindex";
:idindex这种应该是Oralce的写法吧,这里错了修改下
[解决办法]
你试试不用单独的参数构造,而改用下面这样的。
cmd.Parameters.Add(":idindex", OleDbType.Integer);

我记不得是哪个时候回答过人家一个问题。他的也是单独new Parameter不行,总提示少一个参数。换成上面这种方式就OK了。

热点排行