欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

SQLServer中怎么實現(xiàn)時間戳功能-創(chuàng)新互聯(lián)

SQL Server中怎么實現(xiàn)時間戳功能,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)介紹好的網(wǎng)站是理念、設(shè)計和技術(shù)的結(jié)合。成都創(chuàng)新互聯(lián)公司擁有的網(wǎng)站設(shè)計理念、多方位的設(shè)計風(fēng)格、經(jīng)驗豐富的設(shè)計團隊。提供PC端+手機端網(wǎng)站建設(shè),用營銷思維進(jìn)行網(wǎng)站設(shè)計、采用先進(jìn)技術(shù)開源代碼、注重用戶體驗與SEO基礎(chǔ),將技術(shù)與創(chuàng)意整合到網(wǎng)站之中,以契合客戶的方式做到創(chuàng)意性的視覺化效果。

1.基本概念

時間戳:數(shù)據(jù)庫中自動生成的二進(jìn)制數(shù)字,與時間和日期無關(guān)的, 通常用作給表行加版本戳的機制。存儲大小為 8個字節(jié)。

每個數(shù)據(jù)庫都有一個計數(shù)器,當(dāng)對數(shù)據(jù)庫中包含 timestamp 列的表執(zhí)行插入或更新操作時,該計數(shù)器值就會增加。該計數(shù)器是數(shù)據(jù)庫時間戳。這 可以跟蹤數(shù)據(jù)庫內(nèi)的相對時間,而不是時鐘相關(guān)聯(lián)的實際時間。一個表只能有一個 timestamp 列。每次修改或插入包含 timestamp 列的行 時,就會在 timestamp 列中插入增量數(shù)據(jù)庫時間戳值。這一屬性使 timestamp 列不適合作為鍵使用,尤其是不能作為主鍵使用。對行的任 何更新都會更改 timestamp 值,從而更改鍵值。如果該列屬于主鍵,那么舊的鍵值將無效,進(jìn)而引用該舊值的外鍵也將不再有效。如果該表在動態(tài)游標(biāo) 中引用,則所有更新均會更改游標(biāo)中行的位置。如果該列屬于索引鍵,則對數(shù)據(jù)行的所有更新還將導(dǎo)致索引更新。

使用某一行中的 timestamp 列可以很容易地確定該行中的任何值自上次讀取以后是否發(fā)生了更改。如果對行進(jìn)行了更改,就會更新該時間戳值。如果沒有對行進(jìn)行更改,則該時間戳值將與以前讀取該行時的時間戳值一致。若要返回數(shù)據(jù)庫的當(dāng)前時間戳值,請使用 @@DBTS。

2.時間戳的作用

在控制并發(fā)時起到作用:

用戶A/B同時打開某條記錄開始編輯,保存是可以判斷時間戳,因為記錄每次被更新時,系統(tǒng)都會自動維護時間戳,所以如果保存時發(fā)現(xiàn)取出來的時間戳與數(shù)據(jù)庫中的時間戳不相等,說明在這個過程中記錄被更新過,這樣的話可以防止別人的更新被覆蓋。

3.時間戳的應(yīng)用

簡單說一下,timestamp 主要是記錄該行的最后修改時間戳,注意,這個時間戳是不可以轉(zhuǎn)換為時間的,只能標(biāo)注該行修改了。

有 什么用呢?通常是用在數(shù)據(jù)增量更新方面,比如說,我從該表復(fù)制數(shù)據(jù)到另外一個表,但是如果我想只復(fù)制更新過的,那么從最后一次更新的時候,記錄較大的 timestamp的值,然后在當(dāng)前更新的時候,只要where條件找出大于最后一次更新的 timestamp 值的所有行。然后抽取到更新過的數(shù)據(jù),進(jìn)行復(fù)制到另外一個服務(wù)器,這就是增量更新用到的。

4.在SQL中的應(yīng)用例子

(微軟的建議 -- timestamp 語法已被取代,在 DDL 語句,請盡量使用 rowversion 而不是 timestamp。未來的 Microsoft SQL Server 版本將移除這項功能。

參見/tupian/20230522/ 就是timestamp

丟失更新的解決方法如下:

丟失更新概念:當(dāng)用戶同時修改一行數(shù)據(jù),他們先讀取數(shù)據(jù),放在前端進(jìn)行修改,當(dāng)修改后,再提交數(shù)據(jù),這樣最后提交的數(shù)據(jù)會覆蓋先前提交的數(shù)據(jù),這樣就造成了丟失更新。

長話短說,介紹防止丟失更新的方法: 使用rowversion 時間戳。每次更新的時候,mssql都會自動的更新rowversion的值,若一行在讀前與更新前的值前后不一致,就說明有其他的事務(wù)更新了此列,這樣就可以不更新此列,從而防止了丟失更新的情況。

例子 :

先創(chuàng)建一個表:

declare table tmp(a varchar(10),b rowsversion)insert into tmp(a) values( 'abc')

事務(wù)A:(新建查詢 執(zhí)行下列代碼)

declare @rv rowversionselect @rv=b from tmp where a='abc'waitfor delay '00:00:05' --休息5秒update tmp set a='xyz' where b=@rvgo

事務(wù)B: (再新建查詢 執(zhí)行下列代碼)

declare @rv rowversionselect @rv=b from tmp where a='abc'update tmp set a='aaa' where b=@rvgo

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,的支持。

網(wǎng)站標(biāo)題:SQLServer中怎么實現(xiàn)時間戳功能-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://aaarwkj.com/article20/gcdco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機網(wǎng)站排名、手機網(wǎng)站建設(shè)、品牌網(wǎng)站制作、Google、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
五月激情丁香婷婷色网| 日韩中文字幕在线首页| 国产中文字幕乱码中文| 亚洲av永久精品桃色| 97人妻精品一区二区三区六| 91欧美日韩国产在线观看| 亚洲最大成人综合福利网| 日韩精品在线观看你懂的| 中文字幕精品一区二区三区精品| 午夜两性做爰免费视频| 午夜夫妻生活视频在线观看| 欧美成人午夜精品一区二区| 五月婷婷丁香六月在线综合| 69国产精品久久久久久人| 亚洲视频一直看一直爽| 国产尤物直播在线观看| 日韩国产推荐一区二区| 亚洲乱码中文字幕久久| 日本韩国一区二区精品| av在线视频男人的天堂| 美女少妇性高潮的视频| 国产情色自拍在线观看| 未满十八禁止免费在线观看| 国产日产精品久久婷婷色| 日韩精品毛片一区到三区| 91精品国语对白人妻刺激| 日本加勒比系列在线视频| 日韩精品中文字幕国产精品| 人妻有码系列中文字幕专区| 97色伦综合在线欧美视频| 四虎永久精品在线视频| 99久在线观看精品视频| av黄色成人在线观看| 一二区中文字幕在线观看| 国精品午夜福利视频不卡| 99热免费精品在线观看| 日本熟妇一区二区三区高清视频| 91午夜福利视频鉴赏| 欧美日韩国产免费,日日骚| 人人妻人人澡人人爽精品日本| 免费在线观看福利av|