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

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

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

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

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

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

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

還有另外一個(gè)方法,比較笨一點(diǎn),就是用 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)時(shí)在where語句中慎用trim()方法

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

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

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

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

    SQL SERVER 觸發(fā)器介紹

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

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

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

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

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

    如何開啟SqlServer 遠(yuǎn)程訪問

    這篇文章主要介紹了如何開啟SqlServer 遠(yuǎn)程訪問,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    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é)合的方式給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-08-08
  • SQL Server兩表數(shù)據(jù)同步的多種方法詳解

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

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

    索引的原理及索引建立的注意事項(xiàng)

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

最新評論

宜春市| 神木县| 宣恩县| 兴义市| 黄梅县| 石景山区| 安福县| 改则县| 汤阴县| 昂仁县| 无为县| 湖南省| 河北区| 左云县| 灵石县| 安义县| 汝州市| 玛曲县| 西和县| 合水县| 黄大仙区| 应用必备| 英超| 昭平县| 阳谷县| 泰兴市| 维西| 赤水市| 栖霞市| 磴口县| 台东市| 来宾市| 奈曼旗| 龙南县| 榆树市| 万全县| 称多县| 合肥市| 正阳县| 和政县| 岱山县|