sql:string;        query.SQL.Clear;
        sql:='insert into ls_page (funid,funsm,ljbz,sqlpage,sqlend,sqlsum) values (`'+
               fun.Text+'`,`'+funsm.Text+'`,`'+ljbz.Text+'`,`'+
               ansireplacetext(sqlpage.Text,'''','~')+'`,`'+ansireplacetext(sqlend.Text,'''','~')+'`,`'+ansireplacetext(sqlsum.Text,'''','~')+'`)';
        sql:= 'myproc 2,'+idtype+','''+sql+'''';
        query.SQL.Add(sql);
      query.ExecSQL;代码中sql字符串做为参数传递到后台执行
最后sql语句显示在edit中,直接提出拿到查询分析器可以正常运行
在DELPHI中运行出现class eOLEexception message "不正常地定义参数对象,提供了不一致或不完整的信息"
请问谁遇到过类似错误,应该怎么样解决

解决方案 »

  1.   

    调用存储过程最好用StoreProc控件
    sql:= 'myproc 2  '+idtype+','''+sql+'''';
      

  2.   

    sql:= 'myproc  '+idtype+','''+sql+'''';
    试试。
    看看你的sql格式对不对
      

  3.   

    sql格式对都可以执行
    如果不对的话,
    提示的是语法错误
      

  4.   

    sql := 'myproc '+idtype+','''+sql+'''';
    不是你写的:sql := 'myproc ,2' +idtype+','''+sql+'''';
      

  5.   

    soaringsouth(栈桥捉鳖) 
    听不懂可以解释一下吗?