C#中验证sql语句是否正确(不执行语句)
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;
}
相关文章
mysql中获取一天、一周、一月时间数据的各种sql语句写法
创建表:复制代码 代码如下:create table if not exists t( id int, addTime datetime default '0000-00-00 00:00:00′)添加两条初始数据:insert t values(1, '2012-07-12 21:00:00′);insert t values(2, '2012-07...2014-05-31C#实现String字符串转化为SQL语句中的In后接的参数详解
在本篇文章中小编给大家分享的是一篇关于C#实现String字符串转化为SQL语句中的In后接的实例内容和代码,需要的朋友们参考下。...2020-06-25- 可以采用exec方法 declare @tempStr varchar(350) select @tempStr='Update weekcount set [' convert(varchar,@week) ']=[' convert(varchar,@week) '] 1 where us...2016-11-25
- 本篇文章是对C++中两个大数相乘结果不正确的问题进行了详细的分析介绍,需要的朋友参考下...2020-04-25
- sql语句是指我们在安卓开发中会经常碰到有大量的地方要查询数据库了,下面我来介绍在安卓中使用sql语句吧。 SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管...2016-09-20
- 动态组合SQL语句方式实现批量更新的实例,需要的朋友可以参考一下...2021-09-22
- 下面小编就为大家分享一篇解决C#调用dll提示"试图加载格式不正确的程序"问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- mysql中like模糊查询效率低我相信各位是知道的了,小编40w数据使用like非常的慢了,后来直接使用了分表才解决这个问题了,下面我们来看找出mysql中like模糊查询效率低的sql...2016-11-25
帝国CMS批量提取新闻正文内容的第一张图片作为标题缩略图的SQL语句
执行以下脚本的时候请 先备份数据库!文本存放的新闻正文字段不可用! 新闻正文字段作为主表的情况用以下语句: update phome_ecms_news set titlepic =concat(replace(SUBST...2016-05-08- 说明:复制表(只复制结构,源表名:a 新表名:b) SQL: select * into b from a where 1<>1 说明:拷贝表(拷贝数据,源表名:a 目标表名:b) SQL: insert i...2016-11-25
- php怎么用调试模式查看sql语句?本文介绍了Yii调试查看执行SQL语句的方法,非常实用,有需要的同学可以参考一下 本文实例讲述了Yii调试查看执行SQL语句的方法。分享给...2017-07-06
- 懂得sql语句的朋友们自然来说简章,但对像我们这些不太懂的站长们自然是很费尽,用尽百度的各种搜索也不一定能搞定,在此我收集整理了一些帝国里常用的SQL语句,相信这些好东西会站...2015-12-30
- 本文章来给各位同学介绍PHP mysqli批量执行sql语句程序代码,有需要了解的朋友可参考参考。 mysqli 增强-批量执行sql 语句 代码如下 复制代码 ...2016-11-25
- 举个例子,设表名为bbs 回复数的字段为renum 变量名$renum 记录序号字段为id 变量名$id 当我们在论坛回贴时会要改写主贴的回复数,传统的方法要用到到两句SQL语句: //...2016-11-25
- 这篇文章主要介绍了C#中实现一次执行多条带GO的sql语句,以实例形式较为详细的分析了C#执行sql语句的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
- exec sp_MSForEachTable @precommand=N' create table ##( id int identity, 表名 sysname, 字段数 int, 记录数 int, 保留空间 Nvarchar(10), 使用空间 varchar(10)...2016-11-25
- 问题说明: 有时需要在两个或三个数据库的表中,通过相关关键字,查询获取所需记录集,用一般的SQL查询语句是实现不了的,可通过ACCESS的跨库查询功能实现。 解决方法:...2016-11-25
- C#中验证sql语句是否正确(不执行语句),需要的朋友可以参考一下...2020-06-25
php与mysql mysql_connect并执行SQL语句
新手初试,还请各路高手多多指导。 程序源代码如下: <?php $conn = mysql_connect("localhost","root","") or die ("wrong!"); $sel=mysql_select_db("mydb",$conn);...2016-11-25- SQL Injection with MySQL 本文作者:angel 文章性质:原创 发布日期:2004-09-16 本文已经发表在《黑客防线》7月刊,转载请注明。由于写了很久,随着技术...2016-11-25