读书人

为何又是这样错?该怎么解决

发布时间: 2012-03-07 09:13:51 作者: rapoo

为何又是这样错???
var condition,sql :string;
begin
if radiobutton1.checked=true then
begin
sql:= 'select buydate,buytime,clientno,employeeno,goodsno,price,goodquantity,price*goodquantity from buy where goodsno= '+ ' ' ' '+edit1.text+ ' ' ' ';
with mis3dm.mis3query2 do
begin
close;
sql.Clear;
sql.Add(sql);
open;
first;
if recordcount=0 then
showmessage( '没有符合条件的记录 ');
end

end
else
begin
end;
end ;
以上是我部分的程序代码
但是它出了这样的错误提示:
Error] Unit4.pas(62): Incompatible types: 'String ' and 'TStrings '
当我把 sql.Add(sql);里的sql换成具体的sql语句,就成功编译
为啥我看的书可以用sql.Add(sql);,而我却不能????


[解决办法]
把你的变量名称改成sqls或别的就可以了
[解决办法]
var condition,sql :string;
---------
把这里的变量sql换个名字
[解决办法]
把你的SQL变量改个名字,或者不用with.
否则系统把你的变量SQL默认为了Quy的SQL属性了.
[解决办法]
是with这种语法造成的。
你的变量sql被当成adoquery的属性sql了,换个名字

读书人网 >.NET

热点推荐