我无法更新last_updated cloumn中的当前时间(NOW
)。
因为我已从文本文件中读取此查询。
INSERT OR REPLACE INTO table_name (kb_corporate_guid,kb_user_guid,
name,last_updated)
VALUES ('100','121','FAQ','2013-02-07 07:06:05');
我想ignore last_updated
cloumn value'2013-02-07 07:06:05'即使我在查询中指定了replace with NOW()
值到last_updated cloumn。
我试过这个,但它对我不起作用。
ALTER TABLE table_name
CHANGE `last_updated` `last_updated` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP;
答案 0 :(得分:2)
选项1
您可以在插入/更新时创建触发器,它将使用MySql last_updated
函数更新NOW()
字段,它将覆盖字段值,但是当您进行批量插入/更新时,它可能会减慢进程的速度
选项2
查找并替换文本文件中last_updated字段和时间戳值的文本。
选项3
创建具有相同模式的临时表并导入临时表,然后使用INSERT INTO main_table SELECT corp_id, user_id, name, NOW() FROM temp_table
表插入主表。
答案 1 :(得分:1)
在查询中未发送值时使用默认值,现在在查询中使用而不是时间戳。