2011-09-22 108 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