有一update sql:
UPDATE
ums_paymentorder
SET
OrderStatus = '01'
,UpdateTime = NOW()
WHERE OrderNoMer = 'DE15060900000000000005'
執行正確,但另一個字段SrcReqDate 也隨之修改爲now()。
原始建表語句:
create table ums_xx (
...
SrcReqDate TIMESTAMP COMMENT '發送日期',
)
字段默認非null約束。
用sqlyog工具打修改表發現,SrcReqDate字段:
`SrcReqDate` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NULL COMMENT '發送日期';
問題應該就在這句:
DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
執行下面sql 解決問題:
-- 修改字段可爲NULL
ALTER TABLE paymentorder
CHANGE SrcReqDate SrcReqDate TIMESTAMP NULL COMMENT '發送日期';