我在我的 PC 中的 mysql 中创建了一个名为“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
'load data infile' 语法如下:
load data infile "c:/temp/1.txt"
ignore into table test;
但有一个问题。
每个电话号码都被削减如下。
查询正常,3 行受影响,3 个警告(0.00 秒) 记录:3 删除:0 跳过:0 警告:3 mysql> 从测试中选择 *; +-------------+---------+---------+ | 电话号码 | 注册日期 | 备注 | +-------------+---------+---------+ |12222 | 0000-00-00 00:00:00 | |23333 | 0000-00-00 00:00:00 | |34444 | 0000-00-00 00:00:00 | +-------------+---------+---------+ 3 行一组(0.00 秒)
11个字只剩下5个字。6 个字符消失。
第二个问题是“警告”。警告的原因如下。
mysql> 显示警告; +---------+------+-------------------------------- ------------------+ | 水平 | 代码 | 留言 | +---------+------+-------------------------------- ------------------+ | 警告 | 第1264章 第 1 行的列 'reg_date' 的值超出范围 | | 警告 | 第1264章 第 2 行的列 'reg_date' 的值超出范围 | | 警告 | 第1264章 第 3 行的列 'reg_date' 的值超出范围 | +---------+------+-------------------------------- ------------------+ 3 行一组(0.00 秒)
我没有在 reg_date 字段中添加任何内容。但消息显示列“reg_date”的值超出范围。
原因是什么?我该如何解决这些问题?