檢查所使用的語句是否標準 /* 標準SQL和T-SQL之間有很多區別——太多了,這里就不說了。還有,如果你在SQL Server上工作, 那么使用這些私有的擴展是有好處的。由于許多SQL Server的特性的本質,你不使用非標準的命令的話, 將會有很多強大的功能無法實現。如果你想要看看你的SQL是否符合標準,你可以使用SET FIPS_FLAGGER 命令 */ SET FIPS_FLAGGER 'level' /* ' level ' 對 FIPS 127-2 標準的遵從級別,將檢查所有數據庫操作是否達到該級別。如果數據庫操作與選定的 ISO 標準級別沖突,則 Microsoft SQL Server 將生成一個警告。 level 必須是下列值中的一個。 值 說明 ENTRY 檢查是否遵從 ISO 入門級標準。
FULL 檢查是否遵從 ISO 完全級標準。
INTERMEDIATE 檢查是否遵從 ISO 中間級標準。
OFF 不檢查是否遵從標準。 */
/* SET FIPS_FLAGGER 的設置是在分析時設置,而不是在執行或運行時設置。在分析時進行設置意味著:SET 語句只要出現在批處理或存儲過程中即生效,與代碼執行實際上是否到達該點無關;并且 SET 語句在任何語句執行之前生效。例如,假設 SET 語句在 IF...ELSE 語句塊中,而在執行過程中從未到達過該語句塊,但由于分析了 IF...ELSE 語句塊,因此 SET 語句仍生效。
如果在存儲過程中設置 SET FIPS_FLAGGER,則從存儲過程返回控制后將還原 SET FIPS_FLAGGER 的值。因此,在動態 SQL 中指定的 SET FIPS_FLAGGER 語句對動態 SQL 語句之后的任何語句無效。