《MYSQL教程mysql中Load Data記錄換行問題的解決方法》要點(diǎn):
本文介紹了MYSQL教程mysql中Load Data記錄換行問題的解決方法,希望對您有用。如果有疑問,可以聯(lián)系我們。
MYSQL教程問題是這樣的:
表persons有兩個(gè)字段: id和name
文本文檔persons.txt中內(nèi)容(其中每行字段之間用tab分割):
1??? Bush
2??? Carter
3??? Bush
在mysql命令行下使用 load data local infile “persons.txt” into table persons 導(dǎo)入數(shù)據(jù)到persons表中.
導(dǎo)入后查看persons表的數(shù)據(jù),與persons.txt的內(nèi)容一致.但是使用語句
select distinct name from persons
查詢,成果中Bush出現(xiàn)了兩次(正常成果應(yīng)該是Bush只出現(xiàn)一次).
MYSQL教程原因分析:
經(jīng)過分析,發(fā)現(xiàn)原因是windows下?lián)Q行符為"\r\n",而mysql在load data時(shí)默認(rèn)使用"\n"來切割每行記錄,導(dǎo)致插入到表中前兩條記錄的name字段末尾多插入了不可見字符"\r";也便是說使用distinct關(guān)鍵字查詢出來的兩個(gè)Bush中,第一個(gè)詞尾有回車符"\r”,而第二個(gè)詞尾沒有.
說明:
1. mysql默認(rèn)使用tab來分割每行的字段.
2. 因?yàn)閘inux下?lián)Q行符為"\n",所以在linux下不會(huì)出現(xiàn)上述問題.
MYSQL教程修改辦法:
只要在導(dǎo)入數(shù)據(jù)時(shí)指定以"\r\n"來換行就可以了.
修改后的導(dǎo)入數(shù)據(jù)語句為:
《MYSQL教程mysql中Load Data記錄換行問題的解決方法》是否對您有啟發(fā),歡迎查看更多與《MYSQL教程mysql中Load Data記錄換行問題的解決方法》相關(guān)教程,學(xué)精學(xué)透。維易PHP學(xué)院為您提供精彩教程。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/11283.html