OleDbParameter问题,名称和值不匹配 OleDbParameter名称一般用的是“?”,我指定具体的名称,如@ID,@Name然后我用的时候,只用了一个,如insert into table (name) values(@Name),结果他会取@ID的值难道他是按“位置”取的值???是匹配位置的,不是匹配我具体指定的值?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 access貌似是那样把位置调整一下就可以 Access 数据库@变量的顺序要跟sql代码里面的变量的顺序一样。 在access中 注册的参数的位置要与sql语句中出现的参数位置保持一致哦比如注册的时候 @id,@namesql 里也要 @id,@name它是按参数的定义顺序来取值的,不是按名称来的。 如果 CommandType 设置为 Text,OLE DB .NET 提供程序不支持将参数传递给 OleDbCommand 调用的 SQL 语句或存储过程的命名参数。在这种情况下,必须使用问号 (?) 占位符。例如: SELECT * FROM Customers WHERE CustomerID = ? 因此,OleDbParameter 对象添加到 OleDbParameterCollection 的顺序必须直接对应于命令文本中参数的问号占位符的位置。注意 如果集合中的参数不匹配要执行的查询的要求,则可能会导致错误。 http://msdn.microsoft.com/zh-tw/library/system.data.oledb.oledbcommand.parameters(VS.80).aspx *****************************************************************************欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/ ASPX文件中,JS直接使用类,报错 分页怎么处理海量数据 asp.net 连接access数据库出错 asp.net 框架出问题? 请问,有人用C#做过 B/S 的GIS吗?用什么工具呢? 漂亮的弹出窗口是如何实现的啊? 100分,新来散分,请问我刚的VS2005为什么在"打开"旁边没有"网站"只有"项目" linq中判断DateTime类型是否为空 求一个思路,大家哄哄! 怎么获取外网的ip呀? 关于用VS2005做网站后不能在浏览器浏览出来的问题 解决方案问题,项目明明有,路径也对,确无法加载
把位置调整一下就可以
比如注册的时候 @id,@name
sql 里也要 @id,@name
它是按参数的定义顺序来取值的,不是按名称来的。
如果集合中的参数不匹配要执行的查询的要求,则可能会导致错误。
http://msdn.microsoft.com/zh-tw/library/system.data.oledb.oledbcommand.parameters(VS.80).aspx
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/