上次感谢各位的帮忙,希望各位不要因为我因 过圣诞没空上网而晚解贴给分 而产生情绪这次又有个问题请教大家:
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add('select * from :table');
adoquery.parameters.ParamByName('table').Value := 'user' + 'table';
adoquery.open;
执行adoquery.open是弹出异常提示“invalid table name”,我修改成如下时,正确执行,如果我一定要用adoquery的parameter参数时,我应该怎么修改这个问题?
strtable := 'usertable';
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add('select * from ' + strtable);
adoquery.open;
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add('select * from :table');
adoquery.parameters.ParamByName('table').Value := 'user' + 'table';
adoquery.open;
执行adoquery.open是弹出异常提示“invalid table name”,我修改成如下时,正确执行,如果我一定要用adoquery的parameter参数时,我应该怎么修改这个问题?
strtable := 'usertable';
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add('select * from ' + strtable);
adoquery.open;
var
ls_sql,strtabel:string;
begin
ls_sql:='select * from'+strtable;
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add(ls_sql);
adoquery.open;
end;
这样你每次的SQL就会根据自己的需要改变了
strtable := 'usertable';
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add('select * from '''+strtable+''' ');
adoquery.open;每次把你要查询的表名赋值给strtable 就可以了
with adoquery1 do
begin
close;
sql.clear;
sql.add('select * from '+edit1.text);///
sql.open;
end;
adoquery.close;
adoquery.sql.clear;
adoquery.sql.add('select * from :table');
adoquery.prepare;
adoquery.parameters.ParamByName('table').Value := 'user' + 'table';
adoquery.open;
adoquery.sql.clear;
adoquery.sql.add('select * from :table');
adoquery.parameters.ParamByName('table').Value := 'usertable';
adoquery.open;