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

如何在SQLPLUS中执行SQL脚本期间回显文本

谢泉
2023-03-14
问题内容

我有一个批处理文件,该文件在sqlplus中运行一个SQL脚本,并将输出发送到日志文件:

sqlplus用户/密码 RowCount.log

我的日志文件包含以下内容:

Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production

SQL> SQL> 
  COUNT(*)
----------
     0

SQL> 
  COUNT(*)
----------
     0

等等,但是它有数千行输出,因此很难确定哪个结果属于哪个语句。

我想在输出中添加一些格式,以便我可以识别发生了什么。可以对执行的语句进行回显,也可以在脚本中手动插入一些“ echo”语句。理想情况下,它看起来像这样:

SQL> select(*) from TableA;
  COUNT(*)
----------
     0

SQL> select(*) from TableB;
  COUNT(*)
----------
     0

问题答案:

您可以SET ECHO ON在脚本的开头使用来实现此目的,但是,您必须使用@而不是<(也必须EXIT在末尾添加)来指定脚本:

test.sql

SET ECHO ON

SELECT COUNT(1) FROM dual;

SELECT COUNT(1) FROM (SELECT 1 FROM dual UNION SELECT 2 FROM dual);

EXIT

终端

sqlplus hr/oracle@orcl @/tmp/test.sql > /tmp/test.log

测试日志

SQL> 
SQL> SELECT COUNT(1)从对偶;

  COUNT(1)
----------
     1个

SQL> 
SQL> SELECT COUNT(1)FROM(SELECT 1 FROM dual UNION SELECT 2 FROM dual);

  COUNT(1)
----------
     2个

SQL> 
SQL>退出


 类似资料:
  • 我希望在启动Spring boot应用程序时始终运行SQL脚本。我添加了这个液化酶配置: application.yml db。变更日志主机。亚马尔 变更日志。亚马尔 data.yaml data.sql 数据库表应该填充测试数据,但事实并非如此。我看不到日志data.sql文件执行。 你知道问题出在哪里吗?

  • 问题内容: 我有一些要自动执行的SQL脚本。过去,我使用过SQL * Plus,并从bash脚本中手动调用了sqlplus二进制文件。 但是,我试图找出是否有一种方法可以连接到数据库,并从bash脚本内部调用该脚本……以便我可以插入查询并使查询相对于特定天数运行过去。 问题答案: 我有点困惑。您应该能够从bash脚本中调用sqlplus。这可能就是您在第一个陈述中所做的 尝试在bash脚本中执行以

  • 我想使用SQL脚本文件在Kubernetes pod中创建一个SQL Server数据库。我有创建数据库和插入主数据的SQL脚本。由于我是Kubernetes的新手,我很难在pod中运行SQL脚本。我知道SQL脚本可以在单独的kubectl exec命令中手动执行,但是我希望它在pod deploy yml文件本身中自动执行。 有没有办法将脚本文件挂载到pod的卷中,并在启动容器后运行它?

  • 我不清楚浏览器是在脚本运行时还是在执行后启动回流。因此,基本上,如果我有一个循环(100次迭代),将一个元素插入DOM,浏览器会停止脚本执行,用插入的元素重新计算布局,在每一步中重新绘制?然后下一步是什么?或者它不停地插入100个元件,然后再回流? 要将其转换为代码,这两个代码之间是否存在性能差异? 还是更好? 或者,有没有更好、更有效的解决方案,可以在DOM中插入大量元素(10000个或更多),

  • 问题内容: 我有一个.sql文件,其中包含一堆要在heroku上的postgres数据库上执行的插入命令。但我不知道该怎么做: 如果我有权访问postgres控制台,请输入以下内容: 但似乎heroku不支持此命令。我尝试过 但这不能让我输入文件。 还有其他选择吗? 问题答案: 对于种子数据库之类的事情,我推荐理查德·布朗(Richard Brown)的答案:可以说,最好使用Rails种子机制之类

  • 问题内容: 我有一个带有数据库转储的SQL脚本。如何使用Hibernate执行它? 我这样尝试过: 但是它仅在包含单个SQL查询且我需要运行多个插入和其他复杂内容时才有效。 RDBMS:Oracle数据库11g快捷版11.2.0.2.0版-64位生产 问题答案: 用开始结束块包装查询。喜欢