2011-09-22 95 views
1

我的目标是从数据库记录中删除¶(pilcrow)标记。有成千上万的记录,所以我不能手动完成。是否有任何脚本可以从MySQL数据库列中删除¶(pilcrow)符号?如何从数据库记录中删除¶(pilcrow)标记

+2

[MySQL的字符串功能:REPLACE](http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace) –

+0

“替换” 是完全好的。但是如何找到一个pilcrow符号,然后才能用它来替换它? – GethuJohn

+0

你能帮我一个示例脚本吗? – GethuJohn

回答

3
UPDATE table1 SET myfield = REPLACE(myfield,'¶','') WHERE myfield LIKE '%¶%' 

如果你想更换与输入做到:

UPDATE table1 SET myfield = REPLACE(myfield,'¶','\n') WHERE myfield LIKE '%¶%' 
-- linefeed 
or 
UPDATE table1 SET myfield = REPLACE(myfield,'¶','\r\n') WHERE myfield LIKE '%¶%' 
-- cariage return+linefeed. 

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace

确保整理和连接,有问题的列的字符集是相同的:

DESCRIBE table1; 
-- copy the column charset and collation 
SET NAMES '<insert charset name>' COLLATE '<insert collation name>'; 

现在重新运行查询。

参见:http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html

+0

谢谢johan。让我试一试 – GethuJohn

+0

'%¶%'没有返回任何东西:(任何想法? – GethuJohn

+1

@jithin,你的数据库连接的排序规则与你使用'like'的列的排序规则不一样。排序规则是一样的,查看更新后的答案。 – Johan