您好,今天我想和大家分享一個(gè)關(guān)于mysql導(dǎo)入文本后null變成0的問(wèn)題。
如果你在導(dǎo)入文本數(shù)據(jù)到mysql時(shí),出現(xiàn)了null變成0的情況,那么你需要檢查一下你所導(dǎo)入的數(shù)據(jù)源。
一種常見(jiàn)的數(shù)據(jù)源是csv文件,如果你用excel打開(kāi)這個(gè)文件,然后又另存為csv格式,那么在存儲(chǔ)的時(shí)候excel會(huì)將空值替換成0,導(dǎo)致你在導(dǎo)入到mysql時(shí)null變成了0。
如果你確保導(dǎo)入的文本數(shù)據(jù)本身是沒(méi)有問(wèn)題的,那么你可以在導(dǎo)入數(shù)據(jù)時(shí)指定一個(gè)參數(shù),例如:LOAD DATA INFILE 'file.csv' INTO TABLE mytable FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\' LINES TERMINATED BY '\r\n' IGNORE 1 ROWS (col1, col2, @var1, col4) SET col3 = NULLIF(@var1, '');
LOAD DATA INFILE 'file.csv' INTO TABLE mytable FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\' LINES TERMINATED BY '\r\n' IGNORE 1 ROWS (col1, col2, @var1, col4) SET col3 = NULLIF(@var1, '');
通過(guò)這種方法,你可以在導(dǎo)入數(shù)據(jù)時(shí)將空值設(shè)定為null,而不是默認(rèn)地被替換成0。
希望這篇文章對(duì)你有幫助!如果您在mysql導(dǎo)入數(shù)據(jù)時(shí)遇到了其他問(wèn)題,可以在評(píng)論區(qū)留言討論。