qry: TADOQuery;
...qry.SQL.Text := 'select * from sometable;';
qry.Open;运行时说"表名不可用"
如果去掉";"就没错;
问题是我需要";",怎么办?可能还需要执行下列类型语句:
qry.sql.text := 'select * from table1;select * from table2;select * from table3';
又怎么解决?

解决方案 »

  1.   

    qry.SQL.Text := 'select * from table2';
    qry.Open;
    qry.SQL.Text := 'select * from table3';
    qry.Open;
      

  2.   

    declare
      var1 integer;
      ...
    begin
      update table1 set field1 = value1;
      select * from table2;
    end;
      

  3.   

    qry.SQL.Text := 'select * from sometable;';
    这样写肯定出错啦,因为在数据库中根本没有“sometable;”表
    如果你还要执行其他的语句,你可以这样写
    qry.SQL.Text := 'select * from sometable';
    qry.SQL.Text := qry.SQL.Text+'; selct * from tbl2 ';
      

  4.   

    to: delphi_han(小强) 
       这种写法当然会了,我是想写到一个语句中再批执行;
       像Pl/SQL或golden一样.
       SQL Server驱动是可以的.to: Kabin() 加点冰 () 
       我写得好象还是没问题吧,可能没写清楚.
       我要写入的是两个查询语句.to: snowzhong(枫)
       更加差得远了;
       sometable是我假设存在的一张表,或者干脆说是我已建好的一张表吧.
       老兄下第二段的写法你有运行过吗?我想你是没有去运行了.
      

  5.   

    再说一次我的想法:
      1、在oracle数据、delphi程序中的TQuery对象的SQL.Text中,语句中是不是可以带上分号;
        2、是不是多个select可以一起放在SQL.Text中,做一次批量执行;
        3、要求完毕。
      

  6.   

    好像都不可以。你好像是想通过一个Query同时查询出多个数据集是吧?
    sql server中有个compute可以做到多出一个汇总数据集来。
    oracle就不太清楚了。给个这几个sql为什么不能分开的理由先!
      

  7.   

    to: siemens3618010(仉烈亮)
        想为oracle/mysql/sybase/sqlserver/postgreSQL/db2做一个都可以用的象sql server查询分析器一样的东西.