mysql>delimiter //
mysql>drop procedure IF EXISTS simpleproce2;
mysql>create procedure simpleproce2 (out par1 int,out par2 char(30))
mysql>begin
mysql> select id,name into par1,par2 from proce LIMIT 1;
mysql>end
mysql>//一般的存储过程都是在mysql命令行中操作的,想请问下在程序如c/c++中怎么用mysql的API实现存储过程的操作。谢谢。

解决方案 »

  1.   

    如何用c/c++程序实现存储过程,不是指调用,是用c/c++编写存储过程。脱离mysql命令行。
      

  2.   

    C中你可以直接调MYSQL的API,也就这些功能。 你想实现什么?
      

  3.   

    一般的存储过程都是在MySQL Command Line Client中用命令创建的,我想在程序中用MySQL的API或者自定义函数来创建存储过程,这个具体怎么写?
      

  4.   

    这个,要详细参照:27.2.3. 添加新的自定义函数
    27.2.3.1. UDF对简单函数的调用顺序
    27.2.3.2. UDF对集合函数的调用顺序
    27.2.3.3. UDF参量处理
    27.2.3.4. UDF返回值和错误处理
    27.2.3.5. 编译和安装自定义函数
    27.2.3.6. 自定义函数安全预报措施
    要使得UDF机制能够起作用,必须使用C或者C++编写函数,你的系统必须支持动态加载。MySQL 源码分发版包括一个sql/udf_example.cc 文件,此文件定义了5个新函数。可以参考这个文件,看UDF是如何调用常规工作。为了能使用UDF,你需要动态链接mysqld。不要配置MySQL使用--with-mysqld-ldflags=-all-static参数。如果你想使用一个需要从mysqld 访问符号的UDF(例如在使用default_charset_info的sql/udf_example.cc文件中的metaphone函数),你必须使用-rdynamic参数来链接程序(参阅man dlopen)。如果你计划使用UDF, 一个经验法则就是,用with-mysqld-ldflags=-rdynamic设定MySQL,除非你有很好的理由不去这么做。 mysql的帮助当中有的。
      

  5.   

    我也想知道
    mysql提供什么样的API?