我使用的是生产服务器下的MariaDB服务器版本5.5
在本地,我使用的是MariaDB 10.1
现在我尝试在本地使用REGEXP_REPLACE函数--它运行良好,但是当我过去在生产服务器中使用时,我得到了REGEXP_REPLACE函数不存在错误
然后,我知道REGEXP_REPLACE函数只支持MariaDB 10.0.5和更高版本。
有没有办法达到5.5版本下的REGEXP_REPLACE功能?
发布于 2016-11-14 14:30:51
发布于 2016-11-18 12:32:52
是的,您可以使用用户定义的函数(或者,简称UDF )来实现这一点。不过,您需要熟悉C/C++开发。您编译一个共享库/ DLL,将其放到插件目录中,执行CREATE函数.myfunc.so,而您扩展了MySQL。
https://dev.mysql.com/doc/refman/5.6/en/adding-udf.html提供了对这个过程的描述,源代码中有一些UDF的示例,例如这里的example.c
当然,只有在不容易用SQL编写具有相同功能的存储函数(在本例中是正确的)的情况下,这才是合适的。
https://stackoverflow.com/questions/40590852
复制相似问题