mysql匯入檔案出現Data truncated for column 'xxx' at row 1的原因
mysql匯入檔案的時候很容易出現"Data truncated for column 'xxx' at row x",其中字串裡的xxx和x是指具體的列和行數.
有時候,這是因為資料型別的不對應,或者字串長度不夠而造成的.
但是,經常出現row 1就報錯,並且感覺它沒什麼不對的樣子.
這往往是因為windows的回車換行"\r\n"作怪,下面的測試說明了這種情況.
我有一個train.csv的資料檔案,我用python修改後儲存為c.csv.
但是,我用相同的命令把它們匯入到mysql時,train能匯入,c卻出錯.
我把行結束符從"\n"換成"\r\n"後,匯入成功.
用notepad開啟這兩個檔案,會發現train根本沒有換行,而c則有換行.
這說明train裡只有"\n",因此notepad無法識別到換行,而c裡則是"\r\n".
然而用python生成c.csv的時候,輸出只有"\n",這說明python在win下會自動把"\n"變成"\r\n".
還有一點是,除了notepad外的大部分win下的編輯器,都既能識別"\n"又能識別"\r\n".
因此只有用notepad才能知道到底是"\n"還是"\r\n",或者用winHex等工具直接看ascii碼.
最後的結論是,注意這個資料檔案的換行到底是"\n"還是"\r\n".
相關推薦
mysql匯入檔案出現Data truncated for column 'xxx' at row 1的原因
mysql匯入檔案的時候很容易出現"Data truncated for column 'xxx' at row x",其中字串裡的xxx和x是指具體的列和行數. 有時候,這是因為資料型別的不對應,或者字串長度不夠而造成的. 但是,經常出現row 1就報錯,並且感覺它沒什麼
mysql報錯:Data truncation: Data too long for column XXX at row 1
資料庫自定義函式執行失敗,查日誌看到報錯資訊: 報錯資訊: Attempted to convert SQLException to SQLException. Leaving it alone. [SQLState: 22001; errorCode: 1406] com.mysql
資料庫插入中文異常——ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column XXX at row 1
本文轉載自https://blog.csdn.net/bluesliusmile/article/details/78584277?locationNum=10&fps=1 在用以下方法之前,請先執行下面命令檢視。 show variables like 'character
資料庫插入中文異常——ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column XXX at row 1
在用以下方法之前,請先執行下面命令檢視。 show variables like 'character%'; ——檢視所有編碼方式 show create table table_name; ——檢視某個表格的編碼方式 status ——檢視 檢
Out of range value for column 'XXX' at row 1
這個錯誤是因為在java中傳入的引數插入到資料庫中,超過了資料庫對應表字段可輸入範圍。解決:修改傳入引數的大小 將資料庫表中對應欄位的型別設定大一些。eg:我在java中傳入的idCode的值是10086,但資料庫中對應欄位的型別是 tinyint
mysql匯入資料時報錯:Incorrect date value:'0000-00-00' for column 'c_date' at row 1
Mysql5.7版本或5.7以上版本的datetime值不能為'0000-00-00 00:00:00',單獨匯出這個表,然後用記事本工具替換其中的'0000-00-00 00:00:00'的值,改為比如'2017-0
MySql的Blob欄位報錯:Data truncation: Data too long for column 'CONTENT' at row 1
總結來說,Data truncation: Data too long for column 'CONTENT' at row 1問題的出現主要是以下幾個原因: 1、可能
mysql Data too long for column ‘xxx’ at row xxx的解決方法
java操作資料庫新增/修改資料時報錯 mysql Data too long for column ‘xxx’ at row xxx 這是編碼不統一問題:資料庫安裝的編碼 / 建立的表的編碼 / 表字段的編碼 / java專案中hql/sql 編碼需要一致
mysql報錯:java.sql.SQLException: Incorrect string value: ‘xE4xB8x80xE6xACxA1...‘ for column ‘excelName‘ at row 1
play order none png cor lin mysql報錯 mys splay 一、問題 用Eclipse做項目時候報錯 java.sql.SQLException: Incorrect string value: ‘\xE4\xB8\x80\xE6\
解決Incorrect string value: ‘\xF0\x9F\x8C\xB8’ for column ‘nickName’ at row 1,mysql儲存微信暱稱nickName的表情出錯
原因: 由於mysql預設編碼為utf-8,最大隻佔3個位元組,一些表情或者非常見字元,比如該例子中“xF0\x9F\x8C\xB8”佔4個位元組,這樣往資料表裡插入4個位元組的資料就會出錯。 解決辦法: 將相應資料庫和資料表的編碼由utf8修改為utf8mb4。具體兩者區別可以執行百度。
Data too long for column 'CONTENT' at row 1 可能原因
總結來說, Data truncation: Data too long for column 'CONTENT' at row 1問題的出現主要是以下幾個原因: 1、可能 資料庫中的字符集的編碼與寫程式碼的頁面的編碼不相符合;(一般為utf-8)
Data too long for column 'name' at row 1
再用mysql資料庫儲存資料時, 報了這個錯誤:原因 : 資料庫的name欄位的長度給的是20, 然後儲存的資料長度超過了20, 儲存;解決 : 把資料庫name欄位的長度調大, 超過你要儲存的資料長度;
MySql Incorrect datetime value: '' for column 'dateTime' at row 1
1 錯誤內容:Incorrect datetime value: ” for column ‘dateTime’ at row 1 Caused by: com.mysql.jdbc.Mysq
Data truncation: Incorrect datetime value: '' for column 'start' at row 1的解決方法
公司有一個專案報錯如下: java.lang.RuntimeException: java.sql.BatchUpdateException: Data truncation: Incorrect d
mybatis 中設定mysql自增主鍵報錯Incorrect integer value: '' for column 'class_id' at row 1
按道理自增主鍵這樣配置 <insert id="insertAlbum" useGeneratedKeys="true" keyProperty="classId"> insert into attachment_class VA
關於微信名稱特殊字元存資料庫出問題; Incorrect string value: ‘\xF0\x9F\x90\xAF’ for column ‘nickName’ at row 1
首先說一下為啥會出現這個問題: 我們的資料庫編碼通常為UTF8,MYSQL的UTF8編碼最多3個位元組,EMOJI表情或者某些特殊字元的編碼是4個位元組,導致存入資料庫時發生了異常。 解決辦法: 1. 修改該欄位的編碼格式:ALTER TABLE t_game_player C
Incorrect string value ‘xx’ for column ‘xx’at row 1 Query問題
這個讓我頭疼了很長時間,網上說是字符集問題。 其實最主要的問題為傳入的引數與資料庫型別對應不上。 我遇到的是我的實體中定義了屬性為物件,而mybatis中傳入的維物件型別。導致錯誤的發生。#{userid.id}, <?xml version="1.0" enco
Incorrect string value: '\xE7\x88\xB6\xE4\xBA\xB2' for column 'relation_name_a' at row 1
原因:資料欄位儲存編碼格式錯誤 解決辦法: 1、在建立資料庫時命令如下(將新建的資料庫編碼設定為UTF-8): CREATE SCHEMA new_schema DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
java.sql.SQLException: Incorrect string value: '\xF0\x9F\x90\x9B],...' for column 'DESCR' at row 1問題
今天在專案中碰到這樣的報錯,原因是特殊字元無法插入資料庫,只需要將資料庫欄位做以下修改: 專案為微信公眾號,其中微信使用者的暱稱,當你讀取儲存的時候使用者的微信暱稱可能包含特殊字元 所以在資料庫所有有關儲存使用者微信暱稱的欄位都必須修改成utf8mb4的字符集
徹底解決:java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94' for column 'name' at row 1
出現原因:當insert資料中有表情時發生。而這些表情是按照4個位元組一個單位進行編碼的,而我們使用的utf-8編碼在mysql資料庫中預設是按照3個位元組一個單位進行編碼的. 第一步:修改mysql的配置檔案mysql/bin/my.ini, 新增如下內容: 注意:是新