久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Mysql中update

145次閱讀
沒有評論

共計 1075 個字符,預計需要花費 3 分鐘才能閱讀完成。

這篇文章主要介紹了 Mysql 中 update_time 時間字段列的處理和遷移改寫案例,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓丸趣 TV 小編帶著大家一起了解一下。

現(xiàn)象描述

需求:

1.  當新增記錄的時候,數(shù)據(jù)庫自動將系統(tǒng)的當前時間 set 到創(chuàng)建時間和更新時間這兩個字段中。

2.  當更新記錄的時候,數(shù)據(jù)庫只 update 更新時間字段的時間,而不修改創(chuàng)建時間字段對應的值。

處理方法 Mysql 的處理方法:

需求 1:創(chuàng)建時間字段

`creat_time` timestamp NULL
DEFAULT CURRENT_TIMESTAMP

需求 2:更新時間字段

`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

說明:即通過字段的默認值來處理。

Oracle 和 DM 的處理方法:

在 Oracle 或者達夢上,對于需求 1(創(chuàng)建時間字段),處理方式等同;但是對于需求 2(更新時間字段),則需要通過觸發(fā)器處理。即:

需求 1:創(chuàng)建時間字段

CREAT_TIME TIMESTAMP
DEFAULT CURRENT_TIMESTAMP

需求 2:更新時間字段

UPDATE_TIME TIMESTAMP

改字段無法通過默認值,指定屬性。需要為這個列指定觸發(fā)器:

create or replace trigger your_tablename_update_time

before delete or update on your_tablename

referencing OLD AS OLD NEW AS NEW

for each row

BEGIN

  /* 觸發(fā)器體 */

  IF UPDATING THEN

  :new.update_time = CURRENT_TIMESTAMP;

  END IF;

  exception when others then

null;

END;

/

說明:

1.  實際上在 DM 或 Oracle 這個體系內,這個字段,如果有類似續(xù)期,都是應用里面自己維護的,而且工作量也很小。比如需求 2,也只是 update 的時候,多 update 一個字段而已。

2.  如果原先在 Mysql 上開發(fā),已經(jīng)為了省事,利用了 mysql 的對應特性,遷移到 DM 或 Oracle 這個體系的時候,可以通過觸發(fā)器實現(xiàn),而不再改任何應用邏輯。

感謝你能夠認真閱讀完這篇文章,希望丸趣 TV 小編分享的“Mysql 中 update_time 時間字段列的處理和遷移改寫案例”這篇文章對大家有幫助,同時也希望大家多多支持丸趣 TV,關注丸趣 TV 行業(yè)資訊頻道,更多相關知識等著你來學習!

正文完
 
丸趣
版權聲明:本站原創(chuàng)文章,由 丸趣 2023-07-15發(fā)表,共計1075字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網(wǎng)絡搜集發(fā)布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 辛集市| 高清| 舟山市| 富蕴县| 昌邑市| 西城区| 定日县| 观塘区| 准格尔旗| 五常市| 亚东县| 泌阳县| 扎赉特旗| 微博| 扶余县| 剑河县| 金溪县| 静海县| 东海县| 固原市| 芜湖市| 五莲县| 两当县| 靖宇县| 平乐县| 阿图什市| 黄山市| 鸡泽县| 铁岭市| 固镇县| 苏州市| 深圳市| 潞西市| 正安县| 边坝县| 淮阳县| 松阳县| 同仁县| 鹤壁市| 阳曲县| 綦江县|