MSSQL 檢查所使用的語句是否符合標(biāo)準(zhǔn)
更新時間:2009年11月24日 01:55:17 作者:
標(biāo)準(zhǔn)SQL和T-SQL之間有很多區(qū)別——太多了,這里就不說了。還有,如果你在SQL Server上工作,
那么使用這些私有的擴展是有好處的。
檢查所使用的語句是否標(biāo)準(zhǔn)
/*
標(biāo)準(zhǔn)SQL和T-SQL之間有很多區(qū)別——太多了,這里就不說了。還有,如果你在SQL Server上工作,
那么使用這些私有的擴展是有好處的。由于許多SQL Server的特性的本質(zhì),你不使用非標(biāo)準(zhǔn)的命令的話,
將會有很多強大的功能無法實現(xiàn)。如果你想要看看你的SQL是否符合標(biāo)準(zhǔn),你可以使用SET FIPS_FLAGGER
命令
*/
SET FIPS_FLAGGER 'level'
/*
' level '
對 FIPS 127-2 標(biāo)準(zhǔn)的遵從級別,將檢查所有數(shù)據(jù)庫操作是否達(dá)到該級別。如果數(shù)據(jù)庫操作與選定的 ISO 標(biāo)準(zhǔn)級別沖突,則 Microsoft SQL Server 將生成一個警告。
level 必須是下列值中的一個。
值 說明
ENTRY 檢查是否遵從 ISO 入門級標(biāo)準(zhǔn)。
FULL
檢查是否遵從 ISO 完全級標(biāo)準(zhǔn)。
INTERMEDIATE 檢查是否遵從 ISO 中間級標(biāo)準(zhǔn)。
OFF
不檢查是否遵從標(biāo)準(zhǔn)。
*/
/*
SET FIPS_FLAGGER 的設(shè)置是在分析時設(shè)置,而不是在執(zhí)行或運行時設(shè)置。在分析時進(jìn)行設(shè)置意味著:SET 語句只要出現(xiàn)在批處理或存儲過程中即生效,與代碼執(zhí)行實際上是否到達(dá)該點無關(guān);并且 SET 語句在任何語句執(zhí)行之前生效。例如,假設(shè) SET 語句在 IF...ELSE 語句塊中,而在執(zhí)行過程中從未到達(dá)過該語句塊,但由于分析了 IF...ELSE 語句塊,因此 SET 語句仍生效。
如果在存儲過程中設(shè)置 SET FIPS_FLAGGER,則從存儲過程返回控制后將還原 SET FIPS_FLAGGER 的值。因此,在動態(tài) SQL 中指定的 SET FIPS_FLAGGER 語句對動態(tài) SQL 語句之后的任何語句無效。
*/
/*
標(biāo)準(zhǔn)SQL和T-SQL之間有很多區(qū)別——太多了,這里就不說了。還有,如果你在SQL Server上工作,
那么使用這些私有的擴展是有好處的。由于許多SQL Server的特性的本質(zhì),你不使用非標(biāo)準(zhǔn)的命令的話,
將會有很多強大的功能無法實現(xiàn)。如果你想要看看你的SQL是否符合標(biāo)準(zhǔn),你可以使用SET FIPS_FLAGGER
命令
*/
SET FIPS_FLAGGER 'level'
/*
' level '
對 FIPS 127-2 標(biāo)準(zhǔn)的遵從級別,將檢查所有數(shù)據(jù)庫操作是否達(dá)到該級別。如果數(shù)據(jù)庫操作與選定的 ISO 標(biāo)準(zhǔn)級別沖突,則 Microsoft SQL Server 將生成一個警告。
level 必須是下列值中的一個。
值 說明
ENTRY 檢查是否遵從 ISO 入門級標(biāo)準(zhǔn)。
FULL
檢查是否遵從 ISO 完全級標(biāo)準(zhǔn)。
INTERMEDIATE 檢查是否遵從 ISO 中間級標(biāo)準(zhǔn)。
OFF
不檢查是否遵從標(biāo)準(zhǔn)。
*/
/*
SET FIPS_FLAGGER 的設(shè)置是在分析時設(shè)置,而不是在執(zhí)行或運行時設(shè)置。在分析時進(jìn)行設(shè)置意味著:SET 語句只要出現(xiàn)在批處理或存儲過程中即生效,與代碼執(zhí)行實際上是否到達(dá)該點無關(guān);并且 SET 語句在任何語句執(zhí)行之前生效。例如,假設(shè) SET 語句在 IF...ELSE 語句塊中,而在執(zhí)行過程中從未到達(dá)過該語句塊,但由于分析了 IF...ELSE 語句塊,因此 SET 語句仍生效。
如果在存儲過程中設(shè)置 SET FIPS_FLAGGER,則從存儲過程返回控制后將還原 SET FIPS_FLAGGER 的值。因此,在動態(tài) SQL 中指定的 SET FIPS_FLAGGER 語句對動態(tài) SQL 語句之后的任何語句無效。
*/
相關(guān)文章
sql 2000 無法執(zhí)行查詢,因為一些文件缺少或未注冊"的解決方法
在SQL server 2000中打開表查看數(shù)據(jù)的時候,提示說無法執(zhí)行查詢,因為一些文件缺少或未注冊用查詢分析器可以查看數(shù)據(jù),重裝了sql2000也沒有用,這里分享下解決方法2014-01-01
SQL Server 批量插入數(shù)據(jù)的完美解決方案
這篇文章主要介紹了SQL Server 批量插入數(shù)據(jù)的完美解決方案,需要的朋友可以參考下2020-12-12
Sqlserver 存儲過程中結(jié)合事務(wù)的代碼
Sqlserver 存儲過程中使用事務(wù)2010-06-06
sqlserver數(shù)據(jù)庫移動數(shù)據(jù)庫路徑的腳本示例
前段時間做過這么一件事情,把原本放在c盤的所有數(shù)據(jù)庫(除了sql server系統(tǒng)文件外)文件Move到D盤,主要是為了方便后續(xù)管理以及減少磁盤I/O阻塞(C,D是2個獨立磁盤)。腳本需輸入2個參數(shù):目標(biāo)數(shù)據(jù)庫名字和目標(biāo)目錄2013-12-12
sql server編寫通用腳本實現(xiàn)獲取一年前日期的方法
這篇文章主要介紹了sql server編寫通用腳本實現(xiàn)獲取一年前日期,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07

