我正在审核一些代码。它包含一个包含此
的.sql文件****SPOOL install_cg_objects_log.log
PROMPT SCRIPT: /cg/synonyms/cretate_synonyms_for_cg.sql
@cg/sy/cretate_synonyms_for_cg.sql
PROMPT SCRIPT: /cg/packages/in.sql
@cg/packages/in.sql
PROMPT SCRIPT:/cg/triggers/tr.sql
@cg/triggers/trg.sql
SPOOL OFF****
任何人都可以解释一下这个剧本在做什么。
答案 0 :(得分:1)
您拥有的*.sql
文件旨在sqlplus
执行(oracle命令行实用程序)
sqlplus
环境@/somepath/scriptfile.sql
)答案 1 :(得分:0)
我不知道****在这里意味着什么,只是假装你在这里使用它来明确代码的开始和结束。 所以,让我们详细说明您的代码。
SPOOL filename.log - 将查询结果存储在空格后指定的文件中。
PROMPT“some message” - 表示您要在执行时显示的运行时文本消息。
@ - 这个标志用于从SQL>执行.sql你的给定路径的提示,就像你从main.sql文件中调用多个.sql文件。
.sql - 这是一个脚本,其中包含一组多个DML,DDL,DCL语句和其他Oracle对象定义。
[oracle@OLE1 Desktop]$ vi yourmainfile.sql
SPOOL install_cg_objects_log.log
PROMPT SCRIPT: /cg/synonyms/cretate_synonyms_for_cg.sql
select 'test' from dual;
PROMPT SCRIPT: /cg/packages/in.sql
select sysdate from dual;
PROMPT SCRIPT:/cg/triggers/tr.sql
select * from dual;
--@/cg/triggers/tr.sql
SPOOL OFF
[oracle@OLE1 Desktop]$
[oracle@OLE1 Desktop]$ sqlplus -s scott/tiger
@yourmainfile.sql
SCRIPT: /cg/synonyms/cretate_synonyms_for_cg.sql
'TES
----
test
SCRIPT: /cg/packages/in.sql
SYSDATE
---------
12-JUL-17
SCRIPT:/cg/triggers/tr.sql
D
-
X
exit
[oracle@OLE1 Desktop]$