var
tablename:string;
begin
tablename:=edit1.text;
with ADOquery1 do
begin
ADOquery1.SQL.clear;
ADOquery1.SQL.add('create table'+tablename+'(a char(8),b char(8))');
 ADOQuery1.open;
 end;
 end;
运行时老是提示出错.哪位大虾能告诉在下到底错在哪里呀.

解决方案 »

  1.   

    ADOquery1.SQL.add('create table '+tablename+'(a char(8),b char(8))');
      

  2.   

    1,table后面加个空格;
    2,在执行前将代码showmessage,看看有没有什么语法错误。
      

  3.   

    var
    tablename:string;
    begin
    tablename:=edit1.text;
    with ADOquery1 do
    begin
    ADOquery1.SQL.clear;
    ADOquery1.SQL.add('create table '+tablename+'(a char(8),b char(8))');
     ADOQuery1.Execute;
     end;
     end;
      

  4.   

    'create table '+tablename+' (a char(8),b char(8))'注意一下空格
      

  5.   

    建议先用变量把SQL的字符串存起来再赋值
    StrSql := 'create table '+tablename+' (a char(8),b char(8))'
    ADOquery1.SQL.add(StrSqL)
      

  6.   

    一般情况下执行的定义的SQL语言的时候用ADOCommand比较好,如Create ,Insert ,Delete,Alert,Drop,Update等!
    ADOCommand1.CommandText:='Create Table '+TableName+'(a char(8),b char(8))';
    ADOCommand1.Execute;
      

  7.   

    var
        tablename:string;
    begin
        tablename:=edit1.text;
        with ADOquery1 do
        begin
            SQL.Text:='create table '+tablename+'(a char(8),b char(8))';
            Execute;
         end;
    end;
      

  8.   

    ADOQuery1.open;----这里的问题吧
    用  Execute;