当然有问题了。
第一,array[501]应该从支付串里面分离出来,因为你这样只能把它当成字符串值"array[501]";
第二,如果你的数据库使用的是SQL Server,同时执行多条语句还有可能,但是你数据库不是SQL Server,即使是SQL Server,我建议你同时执行的SQL语句不要超过500条,再多也一样。
第一,array[501]应该从支付串里面分离出来,因为你这样只能把它当成字符串值"array[501]";
第二,如果你的数据库使用的是SQL Server,同时执行多条语句还有可能,但是你数据库不是SQL Server,即使是SQL Server,我建议你同时执行的SQL语句不要超过500条,再多也一样。
for i ;= 1 to n do begin
str := format('aaa%d=''%s'',', [i, array[500+i]])
sql := sql + str;
end;
sql := copy(sql, 1, length(sql)-1);
query.sql.text := 'update aaa.db set '+ sql + 'where .....' query.prepare;
query.execsql;2 table a, field1, field2
update a set field1=field2 where .....