在没有超级权限的情况下在mysql中创建汉明距离函数

时间:2012-12-17 12:23:36

标签: mysql levenshtein-distance hamming-distance binary-log

我想在我的MySQL数据库中使用汉明距离(在phpMyAdmin上使用),但在使用给定here的代码创建函数时没有成功。

我正在参考这段代码:

CREATE FUNCTION HAMMINGDISTANCE(
A0 BIGINT, A1 BIGINT, A2 BIGINT, A3 BIGINT,
B0 BIGINT, B1 BIGINT, B2 BIGINT, B3 BIGINT
)
RETURNS INT DETERMINISTIC
RETURN
  BIT_COUNT(A0 ^ B0) +
  BIT_COUNT(A1 ^ B1) +
  BIT_COUNT(A2 ^ B2) +
  BIT_COUNT(A3 ^ B3);

问题在于我没有“超级特权”。我也尝试将这段代码放在DELIMITER //(适用于Levenshtein距离函数,见下文)之间,但也没有解决问题 - 我有一段时间了:

  

第132行的/usr/share/phpmyadmin/libraries/import/sql.php超出了300秒的最长执行时间

我对MySQL很新,所以我想知道是否有人可以帮助我以其他方式在MySQL中创建汉明函数。

顺便说一句,我也在使用Levenshtein distance function,这个功能的创建工作正常。然而,我看到Levenshtein距离应该用于计算两个弦之间的距离和数值数据的汉明距离。

感谢。

1 个答案:

答案 0 :(得分:0)

您需要CREATE ROUTINE权限。

相关问题