2 回答

TA貢獻1811條經(jīng)驗 獲得超6個贊
1、CHAR。CHAR存儲定長數(shù)據(jù)很方便,CHAR字段上的索引效率級高,比如定義char(10),那么不論你存儲的數(shù)據(jù)是否達到了10個字節(jié),都要占去10個字節(jié)的空間,不足的自動用空格填充。2、NCHAR、NVARCHAR、NTEXT。這三種從名字上看比前面三種多了個“N”。它表示存儲的是Unicode數(shù)據(jù)類型的字符。我們知道字符中,英文字符只需要一個字節(jié)存儲就足夠了,但漢字眾多,需要兩個字節(jié)存儲,英文與漢字同時存在時容易造成混亂,Unicode字符集就是為了解決字符集這種不兼容的問題而產(chǎn)生的,它所有的字符都用兩個字節(jié)表示,即英文字符也是用兩個字節(jié)表示。nchar、nvarchar的長度是在1到4000之間。和char、varchar比較起來,nchar、nvarchar則最多存儲4000個字符,不論是英文還是漢字;而char、varchar最多能存儲8000個英文,4000個漢字??梢钥闯鍪褂胣char、nvarchar數(shù)據(jù)類型時不用擔(dān)心輸入的字符是英文還是漢字,較為方便,但在存儲英文時數(shù)量上有些損失

TA貢獻1797條經(jīng)驗 獲得超6個贊
建議:
1、使用事件探查器,跟蹤一下SQL在死鎖之前執(zhí)行了哪些SQL語句
2、多數(shù)死鎖是因為程序沒有經(jīng)過嚴格的測試造成的
3、少部分原因是因為觸發(fā)器嵌套造成的,SQL有內(nèi)部機制,當(dāng)嵌套到一定的層級,就自動終止掉相關(guān)的進程
添加回答
舉報