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

高手帮忙解决下,sql语句字符串解决思路

2012-04-16 
高手帮忙解决下,sql语句字符串upadate test set songname + trim(str1)+,spell + trim(str2)+

高手帮忙解决下,sql语句字符串
'upadate test set songname=''' + trim(str1)
+''',spell=''' + trim(str2)
+''',songer=''' + trim(str3)
+''' where songno=''' ADOquery1.filedbyname('songno').asstring + '''';

现在问题是一执行到str1、str2、str3 某一个值为英文的时候就会出现查询语句语法错误,输出来一看全部是少了一个单引号,如update test set songname='按时',spell='打算',songer='CSDN
后面的都没执行了 怎么解决

[解决办法]
'upadate test set songname=''' + trim(str1)
+''',spell=''' + trim(str2)
+''',songer=''' + trim(str3)
+''' where songno=''' ADOquery1.filedbyname('songno').asstring + '''';
修改代码如下:
'upadate test set songname=''+ quotedstr(trim(str1))
+',spell=' + quotedstr(trim(str2))
+',songer='+ quotedstr(trim(str3))
+' where songno=''+quotedstr(ADOquery1.filedbyname('songno').asstring) ;
给分吧

[解决办法]

Delphi(Pascal) code
adoquery.Sql.Text := 'update test set songname=''' + trim(str1)+''',spell=''' + trim(str2)+''',songer=''' + trim(str3)+''' where songno=''' +ADOquery1.filedbyname('songno').asstring + '''';
[解决办法]
对于变量,不要自己加'upadate test set songname='+'''+str1+'''这样
应该用Quotedstr,如'upadate test set songname='+Quotedstr(str1)
[解决办法]
探讨
Delphi(Pascal) code
adoquery.Sql.Text := 'update test set songname=''' + trim(str1)
+''',spell=''' + trim(str2)
+''',songer=''' + trim(str3)
+''' where songno=''' +ADOquery1.filedbyname('songno').……

[解决办法]
我就奇怪了呀,我就用quotedstr(),是可以的吧
楼主怎么就不好用呢
再次“无语”
[解决办法]
探讨
引用:
...
汗,能用就行,效果都是一样

热点排行