query组件的sql属性中是不是只能写一条sql命令??(10分)

  • 主题发起人 主题发起人 zh_2001
  • 开始时间 开始时间
Z

zh_2001

Unregistered / Unconfirmed
GUEST, unregistred user!
query组件的sql属性中是不是只能写一条sql命令??
如果是几条sql命令怎么办?是不是用execsql?怎么用?请详细说明!
 
假如你要打开(Active:=True)数据表,你就只能用一句SQL,若你是执行(execsql)的话,我想
你可以用多条SQL,我没试过,但我想应该可以,你用";"(分号)隔开,不过,我想应该不提倡这
种做法,最好还是一条一条的来好些.答案满意吗?
 

with query1 do
sql.clear;
sql.add('create...');
sql.add('select ....');
sql.add('insert ...');
sql.add('delete...');
........
execsql; //open;
end;
 
请问上面的,你这些语句写在什么地方?
我是新手啊!
 
1.创建表时用
query1.sql.add('create table tablename1 (。。。)');
query1.sql.add('create table tablename2 (。。。)');
....
query1.execsql;
2.插入记录时
query1.sql.add('insert into tablename1 (。。。)');
query1.sql.add('insert into tablename2 (。。。)');
....
query1.execsql;
3。查询时
query1.sql.add('select * from tablename1 ....');
query1.sql.add('select * from tablename2 ....');
...
query1.open;
具体的你可以去查delphi 的Help
我这里写的不是填在控件属性中,而是在程序代码中写的,控件属性只能写一条,而代码中可以许多条。

 
如果你想用几条sql请
query.close;
query.sql.clear;
query.sql.add(sqlstring);
query.open;
以上代码不停的调用就可以了
或者是insert,update,delete....则用query.excsql代替query.open;
(我在系统开发中经常使用,你可以把上面的代码写成一个函数[:D])
 
zh_2001: 建议新手应该先看看书,熟悉一下基本控件的使用和IDE界面各部分的功能
有了问题先自己想想,再看看书,再看看帮助,最后才到这里问这样才会提高比较快,
也不会浪费那么多时间!!:)
 
也许你认为QUERY控件的SQL属性不能修改?是吧
 
xsql:='select ......';
Query.SQL.clear;
Query.SQL.ADD(XSQL);
Query.open;
 
关键是看DBMS有没有这个功能!
 
多人接受答案了。
 
后退
顶部