为啥子sql语言在delphi中的使用与sql中不同,为什么在delphi中的条件的值要用三个收号加上一个加号或一个引号加上一个加号? 能告诉我为什么吗??

解决方案 »

  1.   

    因为sql 语句在delphi 中是需要按string 类型处理的,而引号加号则是标准的字符串相加或者处理关键字的;因为两个单引号范围内的内容为string 的内容,而这段内容是送sqlserver运行的;sqlserver也是要用单引号处理字符串,所以产生了冲突,而delphi这段就用两个单引号表示内容中的单引号比如,标准sql是select 'a' as field1,1 as field2那么由delphi建立这句子的话就是'select ''a'' as field1, 1 as field2'如果是要改变'a' 和 1的内容的话就是'select ''' + a变量 + ''' as field1, ' + b变量 + ' as field2'
    而最后送给sql 的还是 select a as field1,1 as field2
      

  2.   

    喂,我还是看不懂。比如我说一个例子:
    select * form [apart] where [apart_id]='''+edit1.text+'''呀?
    为什么不可以直截了当的写成:
    select * form [apart] where [apaet_id]=edit1.text;