亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MS Server和Oracle中對NULL處理的一些細(xì)節(jié)差異

 更新時間:2009年06月05日 23:49:44   作者:  
SQL Server和Oracle中對插入數(shù)據(jù)值包含空的處理有所差異,在SQL Server中,我們可以把表字段設(shè)計為非空,但我們?nèi)匀豢梢酝ㄟ^下面語句執(zhí)行插入操作
INSERT INTO Table (TestCol) VALUES(‘')
其中的TestCol字段,其實在設(shè)計的時候,已經(jīng)被設(shè)計為NOT NULL,但我們需要了解一點,在sql server中,null和空格是不同的,也就是說,上面的語句插入的是一個空,但并不是NULL,只有當(dāng)我們的插入語句中沒有該字段的時候,才會被認(rèn)為違反非空的條件約束,這里可能用英文的表達(dá)可能會更加的準(zhǔn)確一些,如果把NULL翻譯成“空”的話,可能就會很容易搞混了。此外,如果我們的字段是INT類型的話,如果我們插入空的話,會得到一個0,也就是說,MS Sql server會自動幫我們處理對空格的轉(zhuǎn)化。

但是在Oracle中,這個便利便不存在咯,我們必須嚴(yán)格按照規(guī)則來進(jìn)行插入,也就是說,我們再想視圖通過插入空來滿足NOT NULL的設(shè)計約束,已經(jīng)不能成功啦,我們必須插入實實在在的內(nèi)容才能符合NOT NULL的約束。

像類似地一些細(xì)節(jié)在我們設(shè)計既要滿足MS Sql,又要滿足Oracle的系統(tǒng)地時候,尤其會成為我們需要處理的家常便飯,這一方面要求我們要嚴(yán)格規(guī)范我們的sql腳本,再者也要對程序處理語句進(jìn)行嚴(yán)格的條件控制才行,否則類似地問題在聯(lián)調(diào)的時候會讓我們陷入一個接著一個的噩夢~

相關(guān)文章

最新評論