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

vb6.0应用带参数的sql语句update时,where条件中的参数失效

2013-03-01 
vb6.0使用带参数的sql语句update时,where条件中的参数失效vb6.0的程序连接access数据库conn.Open Provide

vb6.0使用带参数的sql语句update时,where条件中的参数失效
vb6.0的程序连接access数据库

conn.Open "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & App.Path & "\测试.mdb;"

…………

cmd.CommandText = "Update 报表 SET 一月="200" WHERE 委托者 = @委托者"

Set tempParameter = cmd.CreateParameter("@委托者", adVarChar, adParamInput, 50, "cici")

cmd.Parameters.Append tempParameter

cmd.Execute

access的数据库中,“委托者”字段里有“cici”这个值,但是怎么都更新不了这一行,数据库中“委托者”字段的长度也是50,文本类型

请问如何解决? vb sql 数据库 access
[解决办法]
直接用conn执行试试:
conn.execute "Update 报表 SET 一月='200' WHERE 委托者 = 'cici'"


[解决办法]
ADO 对参数有自己的语法,只能用一个问号。但是后面 CreateParameter 时可以指定名称,只通过添加的顺序和 SQL 中的顺序进行关联。

cmd.CommandText = "Update 报表 SET 一月='200' WHERE 委托者 = ?"

又:200 两边如果是双引号,VB 语法错误。

热点排行