当前位置: 首页 > 面试题库 >

如何获取由.Net(VB或C#)中的参数化查询实际执行的SQL?

慕容玉书
2023-03-14
问题内容

是否有直接方法查看DbCommand对象实际对基础数据库实际执行的SQL命令文本(即,在将参数处理为语句之后)?

详细信息在这里:我正在使用VB.Net
3.5,并具有一个工厂对象(DbProviderFactory)和一个连接(System.Data.IDbConnection)。我正在使用工厂使用该DbProviderFactory.CreateCommand()方法创建新的命令对象,然后将参数化查询分配给CommandText命令的属性。稍后,我创建一些参数并将其与查询关联(使用来创建DbProviderFactory)。

很好,但是我想看看命令对象生成的实际SQL语句。我目前正在针对SQLite数据库进行测试,但想知道是否有一种通用的方法行得通。


问题答案:

服务器执行的实际SQL就是您编写的。参数是与命令本身分开发送的,因此实际上从不将其替换为SQL命令中的值。



 类似资料:
  • 我有一个access数据库,我正在尝试将记录插入。这似乎很容易做到,而且在大多数情况下,我所有的代码都是有意义的。我可以在VS 15中创建查询,并将它们插入到我的数据库中,但由于某些原因,我插入记录的功能不起作用。有人能看出我做错了什么吗? 该函数在cmd上给我一个未处理的异常。ExecuteNonQuery 这是堆栈跟踪 [OleDbException(0x80040e14):INSERT IN

  • 问题内容: 由于引入了泛型,因此对Class进行了参数化,因此List.class生成Class 。这很清楚。 我无法弄清楚的是如何获取本身已参数化的Class类型的实例,即Class >。像下面的代码片段一样: 我经常遇到这个问题的变种,但我仍然不知道,是否只是想念一些东西,或者真的没有更好的方法。感谢您的建议。 问题答案: Class类是一种类型的运行时表示。由于参数化类型在运行时会进行类型擦

  • 我正在对spark sql查询执行计划进行一些分析。explain()api打印的执行计划可读性不强。如果我们看到spark web UI,就会创建一个DAG图,该图分为作业、阶段和任务,可读性更高。是否有任何方法可以从执行计划或代码中的任何API创建该图?如果没有,是否有任何API可以从UI读取该grap?

  • 问题内容: 我正在构建一个通用的Web服务,需要将所有查询参数都转换为一个字符串以供以后解析。我怎样才能做到这一点? 问题答案: 您可以通过上下文访问单个参数,也可以通过上下文访问所有参数: 关键是 jax-rs批注,可用于访问: UriInfo,请求,HttpHeaders,SecurityContext,提供程序

  • 如何在Vue中获取查询参数。js? 例如,。 找不到获取的方法,或者我需要为此使用纯JS或一些库吗?

  • 问题内容: 我想知道如何检索由表适配器执行的SQL查询以进行记录。 例如: 输入: 输出: 我要记录的是insert语句,该语句由表适配器生成以执行insert命令。 我怎样才能做到这一点?有人对此有任何建议吗? 问题答案: 您可以使用此替代方法,并用其值替换ParameterName,但效果不好,因为您需要自己管理值格式,这可能很慢, 并且在执行Insert后需要获取参数。 代码: