Query1.UnPrepare;
Query1.SQL.Clear;
Query1.SQL.Add('Select * From :TableName');
Query1.SQL.Params[0].AsString:='Employee';
Query1.Prepare;
Query1.Open;--------------------------------------------------
以上代码能不能用参数形式................
我试过啦,不行,如用其它方法,不给分.
一定要参数形式?

解决方案 »

  1. try:
    Query1.UnPrepare;
    Query1.SQL.Clear;
    Query1.SQL.Add('Exec(''Select * From :TableName'')');
    Query1.SQL.Params[0].AsString:='Employee';
    Query1.Prepare;
    Query1.Open;
      

  2. Query1.UnPrepare;
    Query1.SQL.Clear;
    Query1.SQL.Add('Select * From :TableName');
    Query1.Params[0].AsString:='Employee';
    Query1.Prepare;
    Query1.Open;--------------------------------------------------
    以上代码能不能用参数形式................
    我试过啦,不行,如用其它方法,不给分.
    一定要参数形式?
      

  3. 哎,这是第二次回答了
    Query1.SQL.Add('Select * From '+edit1.text);
    表不能用参数,用这个多好:)
      

  4. var
      strtable:string;
    .....
    .....Query1.Close;
    Query1.UnPrepare;
    Query1.SQL.Clear;
    strtable:='Employee';
    Query1.SQL.Add('Select * From'+strtable);
    Query1.Prepare;
    Query1.Open;
      

  5. 表名不能用参数。
    如果非用参数的话,就用Format();格式化字符串。
      

  6. 顺序颠倒了当然先要赋值才能用哪!
    Query1.SQL.Clear;
    Query1.Params[0].AsString:='Employee';
    Query1.SQL.Add('Select * From :TableName');
    Query1.Prepare;
    Query1.Open;
    试试吧我这没有环境
    我以前做过可行的!
      

  7. 表名不行,你可以用Query1.SQL.Add('Select * From'+strtable);
      

  8. ssoju() 不知小弟用过参数没有?
      

  9. 在 broland 的新闻组找了一下, 没找到, 国内的就更不用说了, 好象是无解啊!!
      

类似问题 »