MySQL加载时更新时间戳数据填充忽略
我已经编写了几个脚本,将交换机中的数据加载到我的MySQL数据库中 我有一个表开关,我在其中添加了一列“lastupdate”。 表开关如下所示:MySQL加载时更新时间戳数据填充忽略,mysql,linux,timestamp,Mysql,Linux,Timestamp,我已经编写了几个脚本,将交换机中的数据加载到我的MySQL数据库中 我有一个表开关,我在其中添加了一列“lastupdate”。 表开关如下所示: create table switch (name varchar(15), swversion varchar(15), bootversion varchar(15), serialnumber varchar(30), rootbridge varchar(10), address varchar(20), switch_id MEDIUMIN
create table switch (name varchar(15), swversion varchar(15), bootversion varchar(15), serialnumber varchar(30), rootbridge varchar(10), address varchar(20), switch_id MEDIUMINT NOT NULL AUTO_INCREMENT, lastupdate DATE , PRIMARY KEY(switch_id));
我使用以下命令为所有行添加了默认时间戳:ALTER TABLE switch MODIFY lastupdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
我正在使用LOAD DATA infle IGNORE
使用我的“LOAD DATA”-脚本在数据库中加载数据。
现在我想在我的“加载数据”脚本中实现一个MySQL命令,该脚本自动更新表开关中加载(更改或未加载)的每一行的时间戳
有什么建议吗?尝试使用
加载数据填充忽略。。。SET lastupdate=NOW()
不起作用,当行重复时,如果使用忽略
关键字,则跳过SET lastupdate=NOW()。不是吗?或者告诉我们关于表元数据以及如何实现LOAD DATA infle
。Nvm,我使用一个临时表解决了它,这样我就可以摆脱忽略,并且仍然能够保持我的id不会自动增加太多。无论如何谢谢你!