1.delphi有没有像PB的直接生成SQL语句的东东?
2.query1.SQL.add('('+Edit1.text+','''+Edit2.text+''','''+Edit3.text+''','''+Edit4.text+''','''+Edit5.text+''','''+Edit6.text+''','''+hetonglvxing+''')');里的+是什么意思?那些引号是怎么分配的?3.怎么判断插入(insert)语句是否成功?4.delphi的SQL语句能否象PB似的竖着写? 看起来好晕那!

解决方案 »

  1.   

    1﹑沒有。
    2﹑兩個"+"號中間表示字符串變量。
    3﹑當用query.execsql時﹐如果錯誤就是不成功。
    4﹑你想怎么寫都行。
      

  2.   

    1.鼠标右键点TQuery控件,菜单里面有 SQL Builder...
    2. + 还是字符串的连接符号 'abcd' + '1234' = 'abcd1234'
    3.插入不成功bde会跑出一个BDE异常的;
    4.什么叫做竖着写?
      

  3.   

    一楼的大哥,说没有我觉得有点纳闷,还好耙子哥说了,感觉上还是DELPHI中的SQL语句更直观,因为刚开始学太多的SQL原因吧3.怎么判断插入(insert)语句是否成功?
    好像一般不这样用吧,只是用异常保护就可以4.delphi的SQL语句能否象PB似的竖着写? 看起来好晕那!
    应该是可以的,只要不出现错误也行吧,我没试过,
      

  4.   

    1。不知你要的是不是脚本,可从库中生成
    2字符串连接''表示一个'号
    3try
     except
     end;
    4?
      

  5.   

    劝楼主还是手工写吧,生成的sql语句巨长,修改起来也麻烦
      

  6.   

    1﹑有。UpdateSql控件可以实现一部分功能。
    2﹑兩個"+"號中間表示字符串。
    3﹑用query.execsql時﹐如果錯誤就是不成功。
    4﹑你可以写成任意格式。
    5、''''两个单引号之间的 两个单引号表示转化到字符串中是一个单引号。即:'b''a'字符串"b'a"
      

  7.   

    1.鼠标右键点TQuery控件,菜单里面有 SQL Builder...
    里面怎么生成insert语句?
      

  8.   

    query1.SQL.Clear ;
      query1.SQL.add('insert into xinyuluru1(合同ID,合同名称,对方公司名称,法人代表,项目,完成日期,合同履行情况) ');
      query1.SQL.add('values');
     query1.SQL.add('('+Edit1.text+','''+Edit2.text+''','''+Edit3.text+''','''+Edit4.text+''','''+Edit5.text+''','''+Edit6.text+''','''+hetonglvxing+''')');
    Query1.Active:=true;
    //
    query1.SQL.add有错,我找不出来
      

  9.   

    我给你分开看看 你就知道是什么意思了'+Edit1.text+',''//到次为一小句,其中逗号是个字符,',''+Edit2.text+''',''//到次为一句,其中逗号是个字符串!“,”'+Edit3.text+''',''//这儿又是一句,最前面的是这样的'+edit3.text+'
    应该看懂了吧?
      

  10.   

    谢谢 wenyu2000(文雨)
    还有鼠标右键点TQuery控件,菜单里面有 SQL Builder...
    里面怎么生成insert语句?
    搞完揭贴
      

  11.   

    楼主,都告诉你了sql builder 的地方,你就不能自己琢磨一下怎么用?
    他的方法很简单呀。生成 insert 他有点力不从心。
      

  12.   

    琢磨完了,发现sql builder 只能生成Select语句,什么insert,delete,根本没有嘛
      

  13.   

    你用什么数据库的呢,用ACCESS就有呀,SQL也有呀,
      

  14.   

    theADOCommand := TADOCommand.Create(self);
        try
          theADOCommand.Connection :=  Connection;
          with theADOCommand do
          begin
            StrSQL := ' UPDATE T_SUBMIT SET '
                    + ' OrderAcceptID = '+QuotedStr(FileNo)+','
                    + ' OrderID = '+QuotedStr(BookingNo)+','
                    + ' AcceptPerson = '+QuotedStr(Man)+','
                    + ' AcceptDate = GETDATE() '
                    + ' WHERE SubmitID = '+IntToStr(SubmitID)+'';
            CommandText := StrSQL ;
            Execute;
            result:=True;
          end;
        finally
          FreeAndNil(theADOCommand);
        end;
      

  15.   

    人好多多,我也来凑热闹
    楼主的sql没有问题,不过确定hetonglvxing是字符性的