mysql用户自定义函数

    

     工作中以前是使用纯JAVA语法的hsqldb数据库,在hsqldb的sql语句中可以直接调用java定义的函数。后来由于性能问题将hsqldb改为mysql数据库,导致以前用java语法定义的函数不能够在sql语句中直接调用,就需要自己向mysql数据库中添加用户自定义函数。

     在网上搜了下,只要有几种定义方式,一种是通过mysql调用c,或者c++写的函数文件,这种定义方式比较复杂。另一种是直接写存储函数过程。

    由于我的数据库是和应用程序打包成exe文件,在应用程序安装时对mysql采用绿色安装方法。

    mysql数据的安装方法,

 

    在应用程序的安装包中,已经包含了mysql绿色版压缩文件,和对应的数据库文件mydata压缩包,并预先配置好my.ini文件。注:mysql里my.ini文件里[mysqld]预先加上 log-bin-trust-function-creators=1;

    安装过程分别解压mysql和mydata。

    1,把mysql注册为操作系统后台服务,并指明数据库文件为mydata文件夹。

    2,使用create database TEST DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;来指明数据库为gbk支持中文的字符集。注:此处为了解决不支持中文字符问题;

    3,使用mysql的可视化工具,我用了Navicat for MySQL,建立和TEST数据库的连接,并在TEST 数据库下创建函数并保存。

    4,从mydata文件加下找到TEST 文件夹并复制出来,添加到应用程序安装包中的mydta压缩包中。

    5,卸载mysql,并重新安装,函数已经添加到数据库中,应用程序已经通过sql直接调用;

ps:以前没有接触过mysql的函数创建,刚开始写函数时不会,写了几次,就觉得很简单了。

猜你喜欢

转载自danker-dai.iteye.com/blog/1319588