回 帖 发 新 帖 刷新版面

主题:[讨论]VB6执行SQL语句

strsql = "UPDATE telnoTB, fileTB SET telnoTB.fdate = fileTB.fdate WHERE fileTB.telno LIKE '*'+telnoTB.telno+'*'"
DBCON.Execute strsql

可以执行上面语句,但是数据库里面不更新

直接在数据库建立更新UPDATE telnoTB, fileTB SET telnoTB.fdate = fileTB.fdate WHERE fileTB.telno LIKE '*'+telnoTB.telno+'*'
没有任何问题!

ACCESS2003 2007都试过,结果都一样~
WHY????
WHY????
WHY????
WHY????
WHY????

回复列表 (共5个回复)

沙发

数据库连接是否已经成功打开?

板凳

这个试当然的!
如果只是执行
UPDATE TB SET A1='SDS'
这么简单的更新,就没问题!
所以我想上面那句更新的条件有问题
 fileTB.telno LIKE '*'+telnoTB.telno+'*'"
个人感觉试'*'符号的问题!

更新 表1的A=表2的A
条件 表1的B被表2的B所包含~

3 楼

把LIKE '*'+telnoTB.telno+'*'"中的*换成%试试

4 楼

成了,谢谢!
ACCESS里一直使用*号的,以前在VB里也使用*号的
没想到引用其他字段时得用%,谢谢了!
strsql = "UPDATE telnoTB, fileTB SET telnoTB.fdate = fileTB.fdate WHERE fileTB.telno LIKE '%'+telnoTB.telno+'%'"
DBCON.Execute strsql

OK~

5 楼

*和%的区别

我来回复

您尚未登录,请登录后再回复。点此登录或注册