我正在尝试让我的集成测试更具幂等性。一个想法是在每次测试后执行回滚,另一个想法是如何以编程方式解析文本,类似于查询分析器或SSMS中的绿色复选框。
如何让SQL Server在不使用ADO.NET运行命令的情况下对命令进行分析?
更新:这就是最终想要的效果:
using (DbCommand executeOnly = Factory.DbCommand())
{
executeOnly.Connection = command.Connection;
executeOnly.CommandType = CommandType.Text;
executeOnly.CommandText = "SET NOEXEC ON;" + sqlCommand;
executeOnly.Connection.Open();
executeOnly.ExecuteNonQuery();
}
//set more properties of command.
command.Execute();
由于莫名其妙的原因,"SET PARSEONLY ON
“只能在查询分析器中工作。我无法在ADO.NET连接上设置此设置。这还好,因为PARSEONLY
似乎只捕获语法错误,而语法错误并不常见。SET NOEXEC ON
将捕获更多种类的错误,例如引用缺少的表或列或存储过程中缺少的参数的视图。
https://stackoverflow.com/questions/3084387
复制相似问题