在SQL_PLUS里面执行:

sql>@full_path/test.sql;   

例:sql>@D:/test.sql;

不需要commit; 一般都是在test.sql 里面最后加上一个commit;但是需要注意的是:在test.sql文件里面每条语句后必须加上“;”,代表一条语句的执行。

 

1. 执行一个SQL脚本文件

SQL>start file_name

SQL>@file_name

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

 

2. @与@@的区别是什么?

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

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

 

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

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

@@nest_start.sql     - - 相当于@ c:/temp/nest_start.sql

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

SQL> @ c:temp/start.sql

posted on 2012-03-23 00:50  NothingRuan  阅读(2766)  评论(0编辑  收藏  举报