我在下面的電腦中製作了一個名爲'test'的表格。部分削減電話號碼?
create table test(
telnum varchar(20) not null,
reg_date datetime not null default '0000-00-00 00:00:00',
remarks text,
primary key(telnum)
);
我上傳了一個名爲1.txt的文件到表'test'中。 1.TXT的內容是一樣初級講座:
01011112222 01022223333 01033334444
和語法 'INFILE載荷數據' 就像初級講座:
但是有一個問題。
每個電話號碼都像下面一樣剪切。
Query OK, 3 rows affected, 3 warnings (0.00 sec) Records: 3 Deleted: 0 Skipped: 0 Warnings: 3 mysql> select * from test; +-------------+---------------------+---------+ | telnum | reg_date | remarks | +-------------+---------------------+---------+ |12222 | 0000-00-00 00:00:00 | |23333 | 0000-00-00 00:00:00 | |34444 | 0000-00-00 00:00:00 | +-------------+---------------------+---------+ 3 rows in set (0.00 sec)
從11個字符中只剩下5個字符。 6個字符消失。
而第二個問題是'警告'。警告的原因如下所示。
mysql> show warnings; +---------+------+---------------------------------------------------+ | Level | Code | Message | +---------+------+---------------------------------------------------+ | Warning | 1264 | Out of range value for column 'reg_date' at row 1 | | Warning | 1264 | Out of range value for column 'reg_date' at row 2 | | Warning | 1264 | Out of range value for column 'reg_date' at row 3 | +---------+------+---------------------------------------------------+ 3 rows in set (0.00 sec)
我沒有把任何東西放到reg_date字段。 但該消息表示列'reg_date'的範圍值超出範圍。
是什麼原因,我該如何解決這些問題?
問題是長期增添了些許混亂,你可以創建一個sqlfiddle例如 – skv