Oracle数据库执行脚本常用命令小结


本文整理自网络,侵删。

1. 执行一个SQL脚本文件

代码如下:

sqlplus user/pass@servicename<file_name.sql


代码如下:

SQL>start file_names


代码如下:

SQL>@ file_name

我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。

@与@@的区别是什么?

@等于start命令,用来运行一个sql脚本文件。

@命令调用当前目录下的,或指定全路径,或可以通过SQLPATH环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径,否则从缺省路径(可用SQLPATH变量指定)下读取指定的文件 www.111Cn.net。

@@用在sql脚本文件中,用来说明用@@执行的sql脚本文件与@@所在的文件在同一目录下,而不用指定要执行sql脚本文件的全路径,也不是从SQLPATH环境变量指定的路径中寻找sql脚本文件,该命令一般用在脚本文件中。

如:在c:temp目录下有文件start.sql和nest_start.sql,start.sql脚本文件的内容为:

@@nest_start.sql – - 相当于@ c:tempnest_start.sql

则我们在sql*plus中,这样执行:

SQL> @ c:tempstart.sql

2. 重新运行上一次运行的sql语句

SQL>/

3. 将显示的内容输出到指定文件

代码如下:

SQL> SPOOL file_name

在屏幕上的所有内容都输入到该文件中,包括你输入的sql语句。
通常情况下,我们使用SPOOL方法,将数据库中的表导出为文本文件的时候会采用两种方法,如下述:

方法一:采用以下格式脚本

set colsep ‘|'; –设置|为列分隔符
set trimspool on;
set linesize 120;
set pagesize 2000;
set newpage 1;
set heading off;
set term off;
set num 18;
set feedback off;
spool 路径+文件名;
select * from tablename;
spool off;

方法二:采用以下脚本

set trimspool on
set linesize 120
set pagesize 2000
set newpage 1
set heading off
set term off
spool 路径+文件名
select col1||','||col2||','||col3||','||col4||'..' from tablename;
spool off

附一些基本命令

1、得到数据库名和创建日期

代码如下:

SELECT name, created, log_mode, open_mode FROM v$database;

2、ORACLE数据库的计算机的主机名,ORACLE数据库的实例名及ORACLE数据库管理系统的版本信息

代码如下:

SELECT host_name, instance_name, version FROM v$instance;

3、为了知道oracle数据库版本的一些特殊信息

代码如下:

select * from v$version;

4、获取控制文件名字

代码如下:

select * from v$controlfile;

5、得到Oracle数据库的重做日志配置信息

代码如下:

SELECT group#, members, bytes, status, archived FROM v$log;
select GROUP#,MEMBER from v$logfile;

6、获取oracle的每个重做日志(成员)文件所存放的具体位置

代码如下:

select * from v$logfile;

7、知道ORACLE数据库的备份和恢复策略和归档文件的具体位置

代码如下:

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...