infobright導入數據碰到特別字符報錯的處理辦法。本站提示廣大學習愛好者:(infobright導入數據碰到特別字符報錯的處理辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是infobright導入數據碰到特別字符報錯的處理辦法正文
今朝在用的是社區版的infobright,不支撐DML功效,只能用LOAD DATA方法導入數據。
假如元數據中有特別掌握字符,導入進程中常常會報錯,很是末路火。應對戰略有兩種辦法:
1.設置Reject File導入之前,設定 @BH_REJECT_FILE_PATH 和 @BH_ABORT_ON_COUNT 便可以疏忽若干條導入掉敗的記載,而且將這些記載保留在指定文件
/** when the number of rows rejected reaches 10, abort process **/
set @BH_REJECT_FILE_PATH = '/tmp/reject_file';
set @BH_ABORT_ON_COUNT = 10;
BH_ABORT_ON_COUNT 設定為 -1 的話,表現永不疏忽。
也能夠設置 BH_ABORT_ON_THRESHOLD 選項,該選項表現有最多若干百分比的數據許可被疏忽,是以該選項的值是小數格局,例如 BH_ABORT_ON_THRESHOLD = 0.03(表現3%)
2.導出時指定停止符另外,還可以在導出數據時制訂停止符,而且設定疏忽哪些本義字符(\、”、' 等字符),例如:
select fields_list... into outfile '/tmp/outfile.csv' fields terminated by '||' ESCAPED BY '\\' lines terminated by '\r\n' from mytable;
3.或許,將行距離符設定為其他特別標識,例如:select fields_list… into outfile ‘/tmp/outfile.csv' fields terminated by ‘||' ESCAPED BY ‘\\' lines terminated by ‘$$$$$\r\n' from mytable;固然了,這類情形下,現實數據行中就不克不及存在 “$$$$$\r\n” 這個值了,不然會被當做換行標識。