【发布时间】:2015-11-07 17:19:07
【问题描述】:
我的 MySQL 表中有一些错误的字符串。
我想删除所有 ASCII 字符大于127 的字符串。是否有任何 MySQL 函数可以了解我的字符串是否包含错误(大于 127)值?
谢谢,
保罗
【问题讨论】:
我的 MySQL 表中有一些错误的字符串。
我想删除所有 ASCII 字符大于127 的字符串。是否有任何 MySQL 函数可以了解我的字符串是否包含错误(大于 127)值?
谢谢,
保罗
【问题讨论】:
假设列字符集是latin1,表称为test.t1,有坏字符的列称为s,以下蛮力解决方案有效(已测试):
perl -e '$expr="s";for $i (128..255) { $expr = "replace($expr,char($i),'"''"')";} print "update test.t1 set s=$expr"' | mysql
您可能需要向 mysql 命令行客户端提供身份验证凭据。
【讨论】: