没有人仔细研究过bde单元的dbi  函数吗?

解决方案 »

  1.   

    看到党国的份上给个回答。
    这个问题说明了 : delphi在数据库开发方面还不够专业。哎。
      

  2.   

    请你注意Delphi的字符串长度限制,Query的SQL属性是个字符串,如果超过delphi的字符串长度限制,剩余的部分将被抛弃,这样你的sql语句只剩下一半,当让出错,我在sql server下边遇到过这个问题,你可以做一个试验,把你前边的语句删掉一些或者最好做一些精简,然后在执行,应该会发现出错的行数发生了改变,这是因为被舍弃的字符串的位置发生了改变,很可能你发生错误的那句sql语句完全正常了,而其后的语句会提示你错误。
    我想应该是这个问题,因为你说分割后正常,合并后出错,请仔细检查字符串长度。
      

  3.   

    刺月:
     我做实验用的是ms_sql,其实query.sql是Tstrings,因该可以装2G的字符,实际中串在64K是比较安全的有时候70K以上也可以,(因为query在分割的时候,如果没有分割出 残缺的Sql语句),我现在的问题是:Tquery在执行前到底做了那些没有必要的检测 例如:sql语句  insert into tbl(a) values("a's") 
          在分析器运行可以通过
          在query里呢???????
          当param 里的数据出现特殊字符呢?
      

  4.   

    问题自己解决了,原来是quotestr如果给字段插入字符串   a'b"c