delphi2009用tsqlstoredproc 调用mysql 存储过程,传入string参数后执行会报错(没有参数不报错):
dbexpres driver does not support the tdbxtypes.unknown data type相关源码:
   with  StoredProc1 do    //StoredProc1 的各属性已经设置,连接也没有问题
   begin
      Params.ParamByName('funcname').AsString := funcname ;
     Prepared := true;
     ExecProc;            //到这一部报错
   end
存储过程:CREATE DEFINER=`root`@`%` PROCEDURE `test`(funcname varchar(128) )
BEGIN
   select now();END

解决方案 »

  1.   

    意思是dbexpres驱动不支持不明的tdbxtypes数据格式
      

  2.   

    StoredProc1 中的params属性的datatype=ftstring,precision=128
    mysql中的funcname varchar(128)
    mysql的版本是5.0
    delphi2009的dbexpress driver应该是最新的吧,不知道哪位遇到过这个问题,请多指教^_^
      

  3.   

    不用tsqlstoredproc,用tsqlquery去执行sql存储过程,试试
      

  4.   

    建议使用corelab(devart)的mysql驱动