[Oracle]@和@@执行SQL文件


@表示要执行的文件在当前目录(sqlplus启动的目录)
@@表示要执行的文件和正在执行的文件在同一目录下。

下面举个例子。
e: est.sql
select * from tab;
@a.sql
@@a.sql

e:a.sql
select user from dual;

e:sqla.sql
select sysdate from dual;

从msdos进行e盘sql目录执行sqlplus

Microsoft Windows 2000 [Version 5.00.2195]
(C) 版权所有 1985-2000 Microsoft Corp.

C:>e:

E:>cd sql

E:sql>sqlplus

SQL*Plus: Release 9.0.1.3.0 - Production on 星期四 7月 17 09:22:11 20

(c) Copyright 2001 Oracle Corporation.  All rights reserved.

请输入用户名:  yangtk@yangtk
请输入口令:

连接到:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production

SQL> @e:a.sql

USER
------------------------------
YANGTK

SQL> @e:sqla.sql

SYSDATE
----------
17-7月 -03

SQL> @a.sql

SYSDATE
----------
17-7月 -03

SQL> @e: est.sql

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
CHAINED_ROWS                   TABLE
CLASSES                        TABLE
DEBUG_TABLE                    TABLE
DESTINATION                    TABLE
EXCEPTION_TABLE                TABLE
EXCEPTION_VIEW                 VIEW
LOG_TABLE                      TABLE
MAJOR_STATS                    TABLE
PLAN_TABLE                     TABLE
REGISTERED_STUDENTS            TABLE
RM$REPOSITORIES                SYNONYM

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
ROOMS                          TABLE
RS_AUDIT                       TABLE
SOURCE                         TABLE
STUDENTS                       TABLE
TEMP_TABLE                     TABLE
TEST_INDEX                     TABLE
TEST_MONITORING                TABLE
TEST_NOMONITORING              TABLE
TEST_NO_PARTITION              TABLE
TEST_NO_PARTITION_TEMP         TABLE
TEST_UNIQUE_INDEX              TABLE

已选择22行。


SYSDATE
----------
17-7月 -03


USER
------------------------------
YANGTK

SQL>

原文地址:https://www.cnblogs.com/andyjia/p/4644694.html