RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1069171
Accepted
Vladimr Vladimirovoch
Vladimr Vladimirovoch
Asked:2020-01-13 11:57:11 +0000 UTC2020-01-13 11:57:11 +0000 UTC 2020-01-13 11:57:11 +0000 UTC

如何记录 SQL 脚本执行的结果?

  • 772

我使用 .bat 在远程机器上执行,它调用 SQL*Plus 并执行脚本。只有执行的结果以涉及这么多行的消息的形式写入日志,或者如果发生错误,则写入错误代码。

.bat 文本:

SET NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
    
call sqlplus sys/pass@tnsalias as sysdba @restartQueuesSystem.sql >restartQueuesSystem.log
    
pause
    
exit

在哪里:

  • restartQueuesSystem.sql这是脚本文件
  • restartQueuesSystem.log包含由 SQL*Plus 自己编写的执行日志的文件

如何在 SQL*Plus 中设置日志记录或使脚本现代化,以便将执行结果本身写入日志中?

例如:
InrestartQueuesSystem.sql是写的select * from table;。
然后在restartQueuesSystem.log我不仅要查看执行通知,还要查看请求的结果select * from table;。

sql
  • 1 1 个回答
  • 10 Views

1 个回答

  • Voted
  1. Best Answer
    0xdb
    2020-01-22T05:24:22Z2020-01-22T05:24:22Z

    请参阅SQL*Plus 用户指南和参考。
    第 1 章中描述的许多命令。12 SQL*Plus 命令参考用于控制在脚本中执行 SQL 语句时的输出。

    开始的工作示例

    例子.bat:

    SET NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
    
    sqlplus -s -l user/pass@dbserver:1521/service @example.sql > example.log
    
    pause
    

    例子.sql:

    whenever sqlerror exit failure rollback
    set feedback on timing on
    
    prompt
    prompt ## creating table ...
    create table items as
        select rownum id, 'item '||rownum item
        from xmlTable ('1 to 3')
    
    run
    
    prompt
    prompt ## updating table ...
    update items set item=item||'**' 
    where id=2
    
    run
    
    prompt
    prompt ## querying table ...
    select *
    from items
    
    run
    
    prompt
    prompt ## droping table ...
    drop table items
    
    run
    exit
    

    从 CMD 终端运行时:

    > example.bat
    

    将创建以下日志文​​件,其中包含命令及其执行结果:

    ## creating table ...
      1  create table items as
      2  select rownum id, 'item '||rownum item
      3*     from xmlTable ('1 to 3')
    
    Table created.
    
    Elapsed: 00:00:00.33
    
    ## updating table ...
      1  update items set item=item||'**'
      2* where id=2
    
    1 row updated.
    
    Elapsed: 00:00:00.02
    
    ## querying table ...
      1  select *
      2* from items
    
        ID ITEM
    ---------- ---------------------------------------------
         1 item 1
         2 item 2**
         3 item 3
    
    3 rows selected.
    
    Elapsed: 00:00:00.01
    
    ## droping table ...
      1* drop table items
    
    Table dropped.
    
    Elapsed: 00:00:00.27
    
    • 16

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    如何从列表中打印最大元素(str 类型)的长度?

    • 2 个回答
  • Marko Smith

    如何在 PyQT5 中清除 QFrame 的内容

    • 1 个回答
  • Marko Smith

    如何将具有特定字符的字符串拆分为两个不同的列表?

    • 2 个回答
  • Marko Smith

    导航栏活动元素

    • 1 个回答
  • Marko Smith

    是否可以将文本放入数组中?[关闭]

    • 1 个回答
  • Marko Smith

    如何一次用多个分隔符拆分字符串?

    • 1 个回答
  • Marko Smith

    如何通过 ClassPath 创建 InputStream?

    • 2 个回答
  • Marko Smith

    在一个查询中连接多个表

    • 1 个回答
  • Marko Smith

    对列表列表中的所有值求和

    • 3 个回答
  • Marko Smith

    如何对齐 string.Format 中的列?

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5