我刚刚将我的数据库转移到Google的Cloud SQL,但正如Google Cloud SQL的FAQ中所述,它说不支持用户定义的函数。我正在使用一个名为Levenshtein的函数,取自这篇stackoverflow文章,对我在数据库中创建的字典执行搜索。它是一个函数,可以找到看起来相似的单词(包括拼写错误)并返回与给定单词的距离。
Google 是否提供了用户定义函数的替代方法,允许我使用此功能执行搜索?
您对术语感到困惑:
-
用户定义函数 = 在实际代码中定义的函数,编译成 DLL/SO,并使用
CREATE FUNCTION ... SONAME
在 MySQL 中创建。这在 Cloud SQL 中是不可能的。 -
存储过程 = 在 SQL 语句中定义的函数,并在 MySQL 中创建,具有
CREATE FUNCTION routine_body
或CREATE PROCEDURE
。这在云 SQL 中是允许的。
我刚刚通过将定义从该SO帖子复制并粘贴到我的Cloud SQL实例中来对此进行了测试,并且它运行良好。