手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#中验证sql语句是否正确(不执行语句)
C#中验证sql语句是否正确(不执行语句)
摘要:SETPARSEONLY检查每个Transact-SQL语句的语法并返回任何错误消息,但不编译和执行语句。SETPARSEONLY{ON|O...

SET PARSEONLY

检查每个 Transact-SQL 语句的语法并返回任何错误消息,但不编译和执行语句。

SET PARSEONLY { ON | OFF }

当 SET PARSEONLY 为 ON 时,SQL Server 只分析语句。当 SET PARSEONLY 为 OFF 时,SQL Server 编译并执行语句。

SET PARSEONLY 的设置是在分析时设置,而不是在执行或运行时设置。

在存储过程或触发器中不要使用 PARSEONLY。如果 OFFSETS 选项为 ON 而且没有出现错误,则 SET PARSEONLY 返回偏移量。

SET NOEXEC (Transact-SQL)

编译每个查询但不执行查询。

SET NOEXEC { ON | OFF }

当 SET NOEXEC 为 ON 时,SQL Server 将编译每一批处理 Transact-SQL 语句但并不执行它们。当 SET NOEXEC 设置为 OFF 时,所有批处理将在编译后执行。

SQL Server 中的语句执行包含两个阶段:编译和执行。该设置可用于让 SQL Server 在执行 Transact-SQL 代码时,验证代码中的语法和对象名。它也可以用于调试通常是较大的批处理中的部分语句。

SET NOEXEC 设置是在执行或运行时设置,而不是在分析时设置。

SET PARSEONLY的代码:

复制代码 代码如下:

public bool ValidateSQL(string sql)

{

bool bResult;

SqlCommand cmd = _conn.CreateCommand();

cmd.CommandText = "SET PARSEONLY ON";

cmd.ExecuteNonQuery();

try

{

cmd.CommandText = sql;

cmd.ExecuteNonQuery();

bResult = true;

}

catch (Exception ex)

{

bResult = false;

}

finally

{

cmd.CommandText = "SET PARSEONLY OFF";

cmd.ExecuteNonQuery();

}

return bResult;

}

【C#中验证sql语句是否正确(不执行语句)】相关文章:

C#词法分析器之正则表达式的使用

c#中的interface abstract与virtual介绍

C# 使用匿名函数解决EventHandler参数传递的难题

关于C#.net winform程序验证moss的集成身份认证实例

在C#中调用VBScript、javascript等脚本的实现代码

终于了解了下.net 和 j2ee的区别

提权函数之RtlAdjustPrivilege()使用说明

C#加密算法汇总(推荐)

C# 如何判断两个文件内容是否相同的方法

Microsoft Expression Web 简体中文正式版 官方下载地址

精品推荐
分类导航