query1.close
query1.databasename:='c:\windows';
query1.sql.value['c:\windows\desktop'];
query1.sql.clear;
query1.sql.add(inset into "book.db" (姓名,性别) value ('王磊','男','23');
query1.open;
为什么不能使用,(请注明出错处,或帮忙写一个正确的。)
它说用sql加入这句话错误,说错误码的关键字。
请高手们指点。

解决方案 »

  1.   

    query1.close
    query1.databasename:='c:\windows';
    query1.sql.clear;
    query1.sql.add('insert into "book.db" (姓名,性别) values ("王磊","男")');
    query1.open;多看看sql语法吧 23 估计是年龄吧 可是  (姓名,性别) 没有年龄这个字段
      

  2.   

    //少了'年龄'字段名
    query1.sql.add(inset into "book.db" (姓名,性别,年龄) value ('王磊','男','23');
      

  3.   

    上面的 query1.open; 应该是 query1.ExecSQL对于这种不用返回数据集的sql语句,一般都用这个而不用open
      

  4.   

    query1.close
    query1.databasename:='c:\windows';
    query1.sql.value['c:\windows\desktop'];
    query1.sql.clear;
    query1.sql.add(inset into "book.db" (姓名,性别) value ('王磊','男','23');//错了
    query1.open; //错了更正
    query1.close//正确
    query1.databasename:='c:\windows';//不知道
    query1.sql.value['c:\windows\desktop'];//不知道
    query1.sql.clear;
    query1.sql.add(insert into "book.db" (姓名,性别,年龄) values ('王磊','男','23');
    query1.ExecSQL;
    你的SQL语句全都错了!
      

  5.   

    query1.sql.add('insert into book.db (姓名,性别,年龄)values ('王磊','男','23')');
      

  6.   

    insert,update 都用query1.ExecSQL提交
    query1.close
    query1.databasename:='c:\windows'
    query1.sql.value['c:\windows\desktop'
    query1.sql.clear;
    query1.sql.add(insert into book.db(姓名,性别,年龄) values('王磊','男','23');
    query1.ExecSQL;
    试试看!