我发现奇怪的符号出现作为一个进口的结果,这与奇怪的符号相去甚远。
我想找到所有关于
–
我想换成
'
这就是我尝试过的,但失败了:
update exp_channel_data set * = replace(*,'–',''');
最佳答案
update table_name set field_name = replace(field_name,'–',''');
是正确的方法,就像你上面说的那样。
但是,如果您刚刚导入,还没有使用任何数据,那么最好重新导入数据并更改导入设置,以确保使用正确的字符集来消除异常。
如果您可以运行一个php脚本,应该可以执行以下操作:
它不是本机SQL,但它确实自动完成了这个过程。它处理所有表和所有字段。显然,如果您只需要一个表等,您可以改变脚本(删除外部循环)
// Assuming you have connected to database
$dbname = "your_db"
$sql = "SHOW TABLES FROM $dbname";
$tresult = mysql_query($sql);
while ($trow = mysql_fetch_row($tresult)) {
$fresult = mysql_query("SHOW COLUMNS FROM {$trow[0]}");
if (mysql_num_rows($fresult) > 0) {
while ($frow = mysql_fetch_assoc($fresult)) {
mysql_query("UPDATE {$trow[0]} set {$frow['Field']} = replace({$frow['Field']},'–',''');");
}
}
}
关于mysql - 在表格中查找并替换奇怪的符号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5922237/