国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql中Load Data記錄換行問題的解決方法

2020-01-18 23:49:25
字體:
來源:轉載
供稿:網友

問題是這樣的:

表persons有兩個字段: id和name
文本文檔persons.txt中內容(其中每行字段之間用tab分割):
1    Bush
2    Carter
3    Bush

在mysql命令行下使用 load data local infile “persons.txt” into table persons 導入數據到persons表中。

導入后查看persons表的數據,與persons.txt的內容一致。但是使用語句
select distinct name from persons
查詢,結果中Bush出現了兩次(正常結果應該是Bush只出現一次)。

原因分析:

經過分析,發現原因是windows下換行符為"/r/n",而mysql在load data時默認使用"/n"來切割每行記錄,導致插入到表中前兩條記錄的name字段末尾多插入了不可見字符"/r";也就是說使用distinct關鍵字查詢出來的兩個Bush中,第一個詞尾有回車符"/r”,而第二個詞尾沒有。
說明:
1. mysql默認使用tab來分割每行的字段。
2. 因為linux下換行符為"/n",所以在linux下不會出現上述問題。

修改方法:
只要在導入數據時指定以"/r/n"來換行就可以了。
修改后的導入數據語句為:

復制代碼 代碼如下:

load data local infile “persons.txt” into table persons
lines terminated by “/r/n”;

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 连城县| 濉溪县| 海晏县| 华坪县| 青河县| 云龙县| 锦屏县| 大安市| 柞水县| 鱼台县| 肃南| 武强县| 黔江区| 洛扎县| 扎囊县| 莱西市| 仙桃市| 新乡县| 台湾省| 廊坊市| 阿克苏市| 达孜县| 阜宁县| 屏东市| 伊吾县| 昌邑市| 南华县| 古丈县| 翁牛特旗| 衡阳市| 德庆县| 桐柏县| 合阳县| 康定县| 鹤峰县| 通州区| 许昌市| 始兴县| 贡觉县| 那坡县| 当阳市|