怎么给MySQL添加新函数

  有两个途径来为MySQL添加新函数:

  你可以通过自行医函数接口 (UDF)来添加函数。自定义函数被编译为目标文件,然后用CREATE FUNCTION 和DROP FUNCTION 声明动态地添入到服务器中及从服务器中移出。

  你可以将函数添加为MySQL固有(内建)函数。固有函数被编译进mysqld服务器中,成为永久可用的。

  每种途径都有其优点和缺点:

  如果你编写自定义函数,你除了安装服务器本身之外还要安装目标文件。如果将你的函数编译进服务器中,你就不需要这么做了。

  你可以给二进制版本的MySQL分发版添加UDF。固有函数需要你去修正源码分发版。.

  如果你升级你的MySQL分发版,你可以继续使用先前安装了的UDF, 除非你升级到一个UDF接口改变了的新版本。对固有函数而言,每次升级你都必须重复一次修正。

  无论你使用哪种方法去添加新函数,它们都可以被SQL声明调用,就像 ABS() 或 SOUNDEX()这样的固有函数一样。

  另一个添加函数的方法时创建存储函数。这些函数时用SQL声明编写的,而不是编译目标代码。编写存储函数的语法在第20章:存储程序和函数 中描述。

  下面的小节描述UDF接口的特性,给出编写UDF的指令,并讨论MySQL为防止UDF被误用而采取的安全预防措施。

  给出源代码的例子来说明如何编写UDF,可以看一看MySQL源码分发版中提供的sql/udf_example.cc 文件。

时间: 2024-11-30 22:53:59

怎么给MySQL添加新函数的相关文章

如何为MySQL添加新函数

有两个途径来为MySQL添加新函数: 你可以通过自行医函数接口 (UDF)来添加函数.自定义函数被编译为目标文件,然后用CREATE FUNCTION 和DROP FUNCTION 声明动态地添入到服务器中及从服务器中移出. 你可以将函数添加为MySQL固有(内建)函数.固有函数被编译进mysqld服务器中,成为永久可用的. 每种途径都有其优点和缺点: 如果你编写自定义函数,你除了安装服务器本身之外还要安装目标文件.如果将你的函数编译进服务器中,你就不需要这么做了. 你可以给二进制版本的MySQ

《像计算机科学家一样思考Python》——3.5 添加新函数

3.5 添加新函数 至此,我们都只是在使用Python提供的函数,其实我们也可以自己添加新的函数.函数定义指定新函数的名称,并提供一系列程序语句.当函数被调用时,这些语句会顺序执行. 下面是一个例子: def print_lyrics(): print "I'm a lumberjack,and I'm okay." print "I sleep all night and I work all day." def是关键字,表示接下来是一个函数定义.这个函数的名称是

MySQL创建新用户并授权的示例

为MySQL添加新用户的方法有两种:通过使用GRANT语句或通过直接操作MySQL授权表:比较好的方法是使用GRANT语句,更简明并且很少出错.GRANT语句的格式如下: GRANT 权限 ON 数据库.数据表 TO 用户名@登录主机 IDENTIFIED BY "密码" 例如,添加一个新用户名为phpuser,密码为字符串"brophp".让他可以在任何主机上登录,并对所有数据库有查询.插入.修改.删除的权限.首先要以root用户登录,然后输入以下命令: GRAN

Linux环境中MySQL主从同步--添加新的从库

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dgd2010.blog.51cto.com/1539422/1689171 当前我认为数据库主从有两大应用价值: 1.从库相当于主库的备份.虽然数据库的主从并不能代替/取代备份,例如错误的数据可能毁掉所有的数据库,但主从也是在一种可读的状态下保持备份的一种实现方式. 2.从库可以缓解主库的压力,能提高性能.由于从库是只读的,因此在读取查询方面,从库可以代替主库,承担一定的压力,

MySQL数据库添加新用户

在VPS上安装完MySQL之后,缺省的用户只有root@localhost,新添加MySQL用户最简单的方法是: 在phpmyadmin里面执行如下语句(语句最后要加分;号): grant all privileges on DBNAME.* to USERNAME@localhost identified by 'PASSWORD' flush privileges 当然在SSH里面运行 mysql -uroot -p 之后也能够输入上面的sql语句,效果一样. 解释如下: 这将添加新用户,用

如何添加新用户到你的MySQL数据库

如何添加新用户到你的mysql教程数据库教程 本文章主要讲一下如何添加新用户到你的mysql数据库哦,因为一个mysql可能有很多数据库我们要给每个不同的数据库开权限,开用户,这个就有必要了. create user user [identified by [password] 'password'] 实例 create user 'user1'@'localhost' identified by 'pass1'; 如果你检查mysql.user表,您可以在里面找到一个新的纪录.请注意,所有pr

使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法_php技巧

1.新建数据库: 进入phpmyadmin管理界面以后,找到如下文字"创建一个新的数据库",然后在下面填上要新建的数据库的名称,在后面的下拉列表中选择数据库的编码,如"utf8_general_ci",点击"创建"按钮,这样就新建了一个数据库. 2.新建此数据库的对应帐户 在phpmyadmin管理界面点击"权限",打开链接,点击"添加新用户",在打开的页面中会看到"登入信息",输入用户

添加新数据库到MySQL主从复制列表

MySQL主从复制一般情况下我们会设置需要同步的数据库,使用参数配置选项,binlog-do-db,可以在master上指定需要同步的数据库,replicate-do-db在从数据看上指定需要同步的数据库.(一般只设定master上的binlog-do-db即可,不需要两个同时设定.以防万一,在slave也可以加上replicate-ignore-db). 我们遇到的问题是,在master上面新增了一个数据库,这个时候如何把新加的这个数据库添加到MySQL的主从复制链里?(即不重新复制整个库的情

添加新数据库到MySQL主从复制教程解问题解答

MySQL主从复制一般情况下我们会设置需要同步的数据库,使用参数配置选项,binlog-do-db,可以在master上指定需要同步的数据库,replicate-do-db在从数据看上指定需要同步的数据库.(一般只设定master上的binlog-do-db即可,不需要两个同时设定.以防万一,在slave也可以加上replicate-ignore-db). 我们遇到的问题是,在master上面新增了一个数据库,这个时候如何把新加的这个数据库添加到MySQL的主从复制链里?(即不重新复制整个库的情