oracle练习2-sqlplus和isqlplus基本使用
2013-12-20 15:00
309 查看
一,概述
sqlplus 是管理 oracle 数据库的最强大,最高效的工具!
该实验的目的是熟悉 oracle 小工具 sqlplus 的使用。
SQLPLUS 介绍
SQLPLUS 是 ORACLE 公司开发的很简洁的管理工具。
二,操作步骤
(1)oracle版本查看
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod
PL/SQL Release 10.2.0.3.0 - Production
CORE 10.2.0.3.0 Production
TNS for 32-bit Windows: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production
(2)help index
SQL> help index
Enter Help [topic] for help.
@ COPY PAUSE SHUTDOWN
@@ DEFINE PRINT SPOOL
/ DEL PROMPT SQLPLUS
ACCEPT DESCRIBE QUIT START
APPEND DISCONNECT RECOVER STARTUP
ARCHIVE LOG EDIT REMARK STORE
ATTRIBUTE EXECUTE REPFOOTER TIMING
BREAK EXIT REPHEADER TTITLE
BTITLE GET RESERVED WORDS (SQL) UNDEFINE
CHANGE HELP RESERVED WORDS (PL/SQL) VARIABLE
CLEAR HOST RUN WHENEVER OSERROR
COLUMN INPUT SAVE WHENEVER SQLERROR
COMPUTE LIST SET
CONNECT PASSWORD SHOW
显示 SQLPLUS 命令的帮助,而不是 SQL 语法的帮助,它是查询的数据库内的一张表,所以你
要得到帮助需要两个条件,一、数据库是打开的。二、存在 HELP 表
建立 HELP 表的脚本在 oracle_home\sqlplus\admin\help 目录下。
(3)Sql>show all
显示当前 SQLPLUS 的环境设置
(4)Sql>show user
显示当前所登录的用户信息。
(5)Spool
Spool 命令是将屏幕的显示输入到文本文件内,以便查看,有点象屏幕转存。
SQL> spool c:/test.txt
SQL> select * from scott.dept;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
SQL> spool off;
此时,打开c:/test.txt,可看到输出的信息。
SQL> spool c:/test1.txt append
SQL> select dname from scott.dept;
DNAME
--------------
ACCOUNTING
RESEARCH
SALES
OPERATIONS
SQL> spool off
SQL>
加 APPEND 命令的含义是续写 c:\1.TXT,如果不加,将会把原来的 c:\1.TXT 覆盖,这是 10G
的新特性,以前的数据库版本不能续写,只能指定新的文件名称。
(6)run
运行 SQLPLUS 缓冲区内的 SQL 语句,可以缩写为 r。
SQL> run
1* select table_name from user_tables
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
SQL> r
1* select table_name from user_tables
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
(7)/
与 run 命令相同,运行 SQLPLUS 缓冲区内的 SQL 语句。
SQL> show user;
USER 为 "SCOTT"
SQL> list
1* select table_name from user_tables
SQL> /
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
(8)@脚本
运行指定的脚本
SQL> show user;
USER 为 "SCOTT"
SQL> desc dept;
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
DEPTNO NOT NULL NUMBER(2)
DNAME VARCHAR2(14)
LOC VARCHAR2(13)
SQL> @ C:/test.sql
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
DEPTNO NOT NULL NUMBER(2)
DNAME VARCHAR2(14)
LOC VARCHAR2(13)
@@为运行相对路径下的脚本,一般是在大脚本调用小脚本的时候使用。
@与@@的区别是什么?
@等于start命令,用来运行一个sql脚本文件。
@命令调用当前目录下的,或指定全路径,或可以通过SQLPATH环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径,否则从缺省路径(可用SQLPATH变量指定)下读取指定的文件。
@@用在sql脚本文件中,用来说明用@@执行的sql脚本文件与@@所在的文件在同一目录下,而不用指定要执行sql脚本文件的全路径,也不是从SQLPATH环境变量指定的路径中寻找sql脚本文件,该命令一般用在脚本文件中。
如:在c:目录下有文件test.sql和test1.sql,
start.sql脚本文件的内容为:
@@test1.sql
test1.sql脚本文件的内容为
desc emp;
则我们在sql*plus中s,这样执行:
SQL> @ C:/test.sql
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
EMPNO NOT NULL NUMBER(4)
ENAME VARCHAR2(10)
JOB VARCHAR2(9)
MGR NUMBER(4)
HIREDATE DATE
SAL NUMBER(7,2)
COMM NUMBER(7,2)
DEPTNO NUMBER(2)
(9)Save
将当前 SQLPLUS缓冲区内的 SQL 语句保存到指定的文件中
先list,看下缓冲区内的sql语句。
SQL> list
1* select table_name from user_tables
现在save c:\save.txt
SQL> save C:/save.txt
已创建 file C:/save.txt
此时打开c:\save.txt ,可看到select table_name from user_tables
(10)get
将文件中的SQL语句调入到SQLPLUS缓冲区内。
如我们在c:/save.txt 写入 desc emp
SQL> get c:/save.txt
1* select distinct deptno from emp
SQL> /
DEPTNO
----------
30
20
10
SQL>
(11)Edit
编辑当前 SQLPLUS缓冲区内的 SQL 语句
如ed
--是注释当前行
/* */是注释多行
我们先list 看下缓冲区下的sql语句
SQL> list
1* select distinct deptno from emp
此时edit 即可编辑
sqlplus 是管理 oracle 数据库的最强大,最高效的工具!
该实验的目的是熟悉 oracle 小工具 sqlplus 的使用。
SQLPLUS 介绍
SQLPLUS 是 ORACLE 公司开发的很简洁的管理工具。
二,操作步骤
(1)oracle版本查看
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod
PL/SQL Release 10.2.0.3.0 - Production
CORE 10.2.0.3.0 Production
TNS for 32-bit Windows: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production
(2)help index
SQL> help index
Enter Help [topic] for help.
@ COPY PAUSE SHUTDOWN
@@ DEFINE PRINT SPOOL
/ DEL PROMPT SQLPLUS
ACCEPT DESCRIBE QUIT START
APPEND DISCONNECT RECOVER STARTUP
ARCHIVE LOG EDIT REMARK STORE
ATTRIBUTE EXECUTE REPFOOTER TIMING
BREAK EXIT REPHEADER TTITLE
BTITLE GET RESERVED WORDS (SQL) UNDEFINE
CHANGE HELP RESERVED WORDS (PL/SQL) VARIABLE
CLEAR HOST RUN WHENEVER OSERROR
COLUMN INPUT SAVE WHENEVER SQLERROR
COMPUTE LIST SET
CONNECT PASSWORD SHOW
显示 SQLPLUS 命令的帮助,而不是 SQL 语法的帮助,它是查询的数据库内的一张表,所以你
要得到帮助需要两个条件,一、数据库是打开的。二、存在 HELP 表
建立 HELP 表的脚本在 oracle_home\sqlplus\admin\help 目录下。
(3)Sql>show all
显示当前 SQLPLUS 的环境设置
(4)Sql>show user
显示当前所登录的用户信息。
(5)Spool
Spool 命令是将屏幕的显示输入到文本文件内,以便查看,有点象屏幕转存。
SQL> spool c:/test.txt
SQL> select * from scott.dept;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
SQL> spool off;
此时,打开c:/test.txt,可看到输出的信息。
SQL> spool c:/test1.txt append
SQL> select dname from scott.dept;
DNAME
--------------
ACCOUNTING
RESEARCH
SALES
OPERATIONS
SQL> spool off
SQL>
加 APPEND 命令的含义是续写 c:\1.TXT,如果不加,将会把原来的 c:\1.TXT 覆盖,这是 10G
的新特性,以前的数据库版本不能续写,只能指定新的文件名称。
(6)run
运行 SQLPLUS 缓冲区内的 SQL 语句,可以缩写为 r。
SQL> run
1* select table_name from user_tables
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
SQL> r
1* select table_name from user_tables
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
(7)/
与 run 命令相同,运行 SQLPLUS 缓冲区内的 SQL 语句。
SQL> show user;
USER 为 "SCOTT"
SQL> list
1* select table_name from user_tables
SQL> /
TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE
(8)@脚本
运行指定的脚本
SQL> show user;
USER 为 "SCOTT"
SQL> desc dept;
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
DEPTNO NOT NULL NUMBER(2)
DNAME VARCHAR2(14)
LOC VARCHAR2(13)
SQL> @ C:/test.sql
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
DEPTNO NOT NULL NUMBER(2)
DNAME VARCHAR2(14)
LOC VARCHAR2(13)
@@为运行相对路径下的脚本,一般是在大脚本调用小脚本的时候使用。
@与@@的区别是什么?
@等于start命令,用来运行一个sql脚本文件。
@命令调用当前目录下的,或指定全路径,或可以通过SQLPATH环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径,否则从缺省路径(可用SQLPATH变量指定)下读取指定的文件。
@@用在sql脚本文件中,用来说明用@@执行的sql脚本文件与@@所在的文件在同一目录下,而不用指定要执行sql脚本文件的全路径,也不是从SQLPATH环境变量指定的路径中寻找sql脚本文件,该命令一般用在脚本文件中。
如:在c:目录下有文件test.sql和test1.sql,
start.sql脚本文件的内容为:
@@test1.sql
test1.sql脚本文件的内容为
desc emp;
则我们在sql*plus中s,这样执行:
SQL> @ C:/test.sql
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
EMPNO NOT NULL NUMBER(4)
ENAME VARCHAR2(10)
JOB VARCHAR2(9)
MGR NUMBER(4)
HIREDATE DATE
SAL NUMBER(7,2)
COMM NUMBER(7,2)
DEPTNO NUMBER(2)
(9)Save
将当前 SQLPLUS缓冲区内的 SQL 语句保存到指定的文件中
先list,看下缓冲区内的sql语句。
SQL> list
1* select table_name from user_tables
现在save c:\save.txt
SQL> save C:/save.txt
已创建 file C:/save.txt
此时打开c:\save.txt ,可看到select table_name from user_tables
(10)get
将文件中的SQL语句调入到SQLPLUS缓冲区内。
如我们在c:/save.txt 写入 desc emp
SQL> get c:/save.txt
1* select distinct deptno from emp
SQL> /
DEPTNO
----------
30
20
10
SQL>
(11)Edit
编辑当前 SQLPLUS缓冲区内的 SQL 语句
如ed
--是注释当前行
/* */是注释多行
我们先list 看下缓冲区下的sql语句
SQL> list
1* select distinct deptno from emp
此时edit 即可编辑
相关文章推荐
- python:cx_oracle基本使用
- [RTT例程练习] 2.2 信号量之基本使用(动态/静态信号量)
- Oracle下sqlplus无法使用命令退格删除和历史记录的解决方法--使用rlwrap
- ORACLE 游标的基本使用
- Oracle 11.2.0.3 linux x86_64 使用sqlplus 搭建 dataguard
- oracle使用sql语句:基本的增、删、改语句
- 【ORACLE】sqlplus和exp不使用服务名,直接使用IP地址
- 使用Oracle Instant Client - SQLPlus (设置PLSQL Developer访问本机64位Oracle)
- Oracle笔记 一、oracle的安装、sqlplus的使用
- Oracle 11G RAC数据库基本测试和使用
- 如何使用sqlplus 登陆Oracle 数据库
- 对oracle当中子查询建表,merge操作,创建,修改,删除约束,创建使用触发器的复习练习
- oracle基本命令练习笔记
- [RTT例程练习] 2.2 信号量之基本使用(动态/静态信号量)
- linux 环境oracle sqlplus下使用退格backspace回删出现^H的解决办法
- oracle存储过程基本使用
- Oracle基本索引的使用
- PLSQL Developer连接Oracle及PLSQL Developer基本使用,表及语句索引情况
- Oracle 基础系列之1.2 oracle的基本使用
- db_oracle_linux下基本使用