欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MSSQL 检查所使用的语句是否符合标准

程序员文章站 2023-12-02 21:11:52
检查所使用的语句是否标准 /* 标准sql和t-sql之间有很多区别——太多了,这里就不说了。还有,如果你在sql server上工作, 那么使用这些私有的扩展是有好处的。...
检查所使用的语句是否标准
/*
标准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 语句之后的任何语句无效。

*/