2013-10-03 46 views
0

我使用MySQL的工作臺創建EER圖(正向工程), 數據庫並希望從一個文本文件中的數據加載到我的表MySQL加載數據infile;不正確的字符串值誤差

load data infile 'c:\\actors.txt' ignore into table actors field terminated by '\t'; 

該文件包含歐洲字符。我已經嘗試過utf16,utf8,latin1,latin2字符集用於我的數據庫,但仍然收到錯誤錯誤的字符串值'\ xE4vel'。我已經丟棄了模式,並且每次都創建了不同的字符集(所有表根據字符集都有正確的分類)。我的操作系統是Windows7 64位,如果它有任何區別! 任何人都可以幫助我。謝謝

回答

0

我設法解決它,似乎工作臺(在我的情況下,至少)沒有定義的字符集,並在表中每一列的整理和你應該手動做! 例如,如果你設置你的數據庫字符集latin1和整理latin1_swedish_ci每個表中的每個字段仍然是空字符集和整理,我不得不一一去我的表,並設置字符集!我不知道這是正向工程還是什麼問題? 它解決的任何方式

0

您是否嘗試過使用

LOAD DATA LOCAL INFILE?

此外,我不知道你的文件位置後隨機忽略什麼。

例如,您只需在數據後添加單詞LOCAL,然後取消忽略。試試這個:因爲它是在數據庫中定義

LOAD DATA LOCAL INFILE 'c:\\actors.txt' into table actors field terminated by '\t'; 
+0

忽略工作有點像本地,忽略錯誤(不停止加載),並繼續其餘的。我嘗試過本地和仍然是同樣的問題,所有的特殊字符被替換?在數據庫中 –

+0

嗯,很奇怪。特殊字符在哪?你以後會用什麼數據?您可能需要將特殊字符轉換爲HTML代碼,然後像這樣保存,然後在使用時將其傳回。 –

+0

字符如ö,ä,å,á,Ó,...這是一個簡單的電影數據庫,其中包括演員導演作家制作人的表格和 –