select * from terminal where owner in('abc','def')
'abc','def' 这个字符串是存在另一张表的某个字段中的,保存的格式是这样abc,def的,一定要转成'abc','def'这种格式吗?
另外还有个问题,就是这里什么内容能达到 select * from terminal 的效果,有办法不用先读出字符串内容直接通过sprintf生成sql语句吗.
[解决办法]
必须要转成成'abc','def'
abc def 如果存成行格式就行了
第一行 abc
第二行 def
然后
select * from terminal where owner in( select tField from Table )
[解决办法]
不管在C++代码中,还是在SQL语句中,用来表示一个字符串时,必须要用对应的符号括起来.
C++中用双引号,SQL语句和Delphi中用单引号
[解决办法]
StringReplace 用这个函数搞定
String str;
str = "abc,def,ghi,jkl";
str = StringReplace(str,",","','",TReplaceFlags()<<rfReplaceAll) ;
str = "'"+str+"'";
Caption = str;