最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

數(shù)據(jù)庫中identity字段不必是系統(tǒng)產(chǎn)生的唯一值 性能優(yōu)化方法(新招)

 更新時間:2011年09月05日 20:14:21   作者:  
具有identity特性的字段,其值是系統(tǒng)產(chǎn)生的,自動增加的,所以,一般把這個用在一個表的主鍵上。
但是,具有identity特性的字段,不需要具有唯一性,更不必須是主鍵。

可以通過,set identity_insert tablename (on|off),在運行時控制,是否可以在identity字段中指定值,而不是由系統(tǒng)自動的插入值。

那么,這有什么用處呢。舉個例子來說,兩個用戶之間的聊天,可以有多次,這個用一個chatsession來表示。在數(shù)據(jù)庫中,我們需要三個表: user, chatsession(sessionid identity,...), user_chatsession (userid, sessionid, ...), 來表示這個關(guān)系。這里面,多出了一個表chatsession, 其主鍵sessionid具有identity特性,并且在user_chatsession中被引用。

但是,我們知道,數(shù)據(jù)庫寫操作比讀操作的開銷要大很多,如果我想做優(yōu)化,把chatsession整個的去掉,那應(yīng)該怎么做呢.

這時,就會用到我說的這一點。首先把 user_chatsession 中的sesssionid變成identity 字段,在插入一個session中的第一個 user-session (for user a)記錄時,讓系統(tǒng)產(chǎn)生sessionid, 然后記錄下這個sessionid, 在插入一個session中后續(xù)的 user-session (for user b, user c...), 執(zhí)行set identity_insert tablename on,就可以把先前記錄的sessionid值插入。

還有另外一個方法,比較笨一點,就是用 select max(sessionid) + 1 from table where userid = @useridA,來獲得要新插入的sessionid, 這種方法性能上顯然差了許多。

相關(guān)文章

  • 防御SQL注入的方法總結(jié)

    防御SQL注入的方法總結(jié)

    這篇文章主要講解了防御SQL注入的方法,介紹了什么是注入,注入的原因是什么,以及如何防御,需要的朋友可以參考下
    2015-08-08
  • sqlserver 多表關(guān)聯(lián)時在where語句中慎用trim()方法

    sqlserver 多表關(guān)聯(lián)時在where語句中慎用trim()方法

    最近做的一個項目由于前期數(shù)據(jù)庫設(shè)計不合理,導(dǎo)致多表關(guān)聯(lián)的主外鍵長度設(shè)計不一致,以致過長主外鍵中過長的字段在填入相同字段時,多余部分被填入空字符。迫于無奈,就在多表關(guān)聯(lián)的where語句中使用了trim()方法。
    2009-09-09
  • 如何強制刪除或恢復(fù)SQLServer正在使用的數(shù)據(jù)庫

    如何強制刪除或恢復(fù)SQLServer正在使用的數(shù)據(jù)庫

    如何強制刪除或恢復(fù)SQLServer正在使用的數(shù)據(jù)庫...
    2007-01-01
  • SQL SERVER 觸發(fā)器介紹

    SQL SERVER 觸發(fā)器介紹

    觸發(fā)器是一種特殊類型的存儲過程,它不同于之前的我們介紹的存儲過程。觸發(fā)器主要是通過事件進行觸發(fā)被自動調(diào)用執(zhí)行的。而存儲過程可以通過存儲過程的名稱被調(diào)用。
    2013-03-03
  • 簡化SQL Server備份與還原到云工作原理及操作方法

    簡化SQL Server備份與還原到云工作原理及操作方法

    您可以使用 SQL Server 的本機備份功能來備份您的 SQL Server Database到 Windows AzureBlob 存儲服務(wù),也可以使用 T-SQL 和SMO備份到Windows AzureBlob存儲,感興趣的可以了解下本文,或許可以幫助到你
    2013-02-02
  • 分享Sql日期時間格式轉(zhuǎn)換

    分享Sql日期時間格式轉(zhuǎn)換

    這篇文章介紹了Sql日期時間格式轉(zhuǎn)換,有需要的朋友可以參考一下
    2013-08-08
  • 如何開啟SqlServer 遠程訪問

    如何開啟SqlServer 遠程訪問

    這篇文章主要介紹了如何開啟SqlServer 遠程訪問,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • 將Excel數(shù)據(jù)導(dǎo)入到SQL?Server數(shù)據(jù)庫的操作指南

    將Excel數(shù)據(jù)導(dǎo)入到SQL?Server數(shù)據(jù)庫的操作指南

    這篇文章主要介紹了將Excel數(shù)據(jù)導(dǎo)入到SQL?Server數(shù)據(jù)庫的操作指南,文中通過圖文結(jié)合的方式給大家講解的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-08-08
  • SQL Server兩表數(shù)據(jù)同步的多種方法詳解

    SQL Server兩表數(shù)據(jù)同步的多種方法詳解

    這篇文章主要介紹了SQL Server兩表數(shù)據(jù)同步的多種方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • 索引的原理及索引建立的注意事項

    索引的原理及索引建立的注意事項

    聚集索引,數(shù)據(jù)實際上是按順序存儲的,數(shù)據(jù)頁就在索引頁上。就好像參考手冊將所有主題按順序編排一樣。一旦找到了所要搜索的數(shù)據(jù),就完成了這次搜索,對于非聚集索引,索引是安全獨立于數(shù)據(jù)本身結(jié)構(gòu)的,在索引中找到了尋找的數(shù)據(jù),然后通過指針定位到實際的數(shù)據(jù)
    2012-07-07

最新評論

塔河县| 乐亭县| 平度市| 广昌县| 多伦县| 宜章县| 渭源县| 广西| 许昌县| 曲阳县| 米易县| 绍兴县| 禹州市| 济南市| 沁水县| 义马市| 锦州市| 淄博市| 崇文区| 乡城县| 固始县| 分宜县| 永昌县| 灵宝市| 灌云县| 通河县| 土默特左旗| 仪征市| 方城县| 惠安县| 驻马店市| 邓州市| 万州区| 太仆寺旗| 盱眙县| 阿瓦提县| 招远市| 南投县| 旅游| 玛纳斯县| 务川|