前台跟踪结果
T = 'aaaaaaaaaaa','bbbbbbbbbb','
因其要作为一个参数传递给存储过程(应该为'aaaaaaaaaaa','bbbbbbbbbb'),故在前台要截取字符串。
用 Delete(T,Length(T),2); 没截取掉,是不是写错了。
程序大概:
if ADOQuery2.RecordCount > 1 then
begin
T := '';
while not ADOQuery2.Eof do
begin
T := T + ADOQuery2.Fields[0].AsString;
if K = ADOQuery2.RecordCount - 1 then
begin
break;
end
else
T := T + ''',''';
ADOQuery2.Next;
end;
Delete(T,Length(T),2);
end;
是寫錯了, 但我不知道你要得到什麼!
前台跟踪结果
T = 'aaaaaaaaaaa','bbbbbbbbbb','
而后台需要的是 将 'aaaaaaaaaaa','bbbbbbbbbb' 传递给存储过程一参数 @ccc
使满足
..where ccc in (@ccc)
........
应该怎样改写上述程序?
谢谢!
能截掉的,你做一个断点看一下有没有执行你的Delete那条语句
begin
T := '';
while not ADOQuery2.Eof do
begin
if K = ADOQuery2.RecordCount then break;
T := T + ADOQuery2.Fields[0].AsString;
T := T + ',';
ADOQuery2.Next;
end;
end;