ORACLE 中sqlplus使用

Oracle是现在最流行的数据库语言之一;下面我就为大家介绍一下Oracle仲SQP*PLUS的应用。

Oracle的sql*plus是与oracle进行交互的客户端工具。

在sql*plus中,可以运行sql*plus命令与sql*plus语句。

我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。

除了sql*plus语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。

它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。

下面就介绍一下一些常用的sql*plus命令:1. 执行一个SQL脚本文件SQL>start file_nameSQL>@ file_name我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。

2. 对当前的输入进行编辑SQL>edit3. 重新运行上一次运行的sql语句SQL>/4. 将显示的内容输出到指定文件SQL> SPOOL file_name在屏幕上的所有内容都包含在该文件中,包括你输入的sql语句。

5. 关闭spool输出SQL> SPOOL OFF只有关闭spool输出,才会在输出文件中看到输出的内容。

6.显示一个表的结构SQL> desc table_name7. COL命令:主要格式化列的显示形式。

该命令有许多选项,具体如下:COL[UMN] [{ column|expr} [ option ...]]Option选项可以是如下的子句:ALI[AS] aliasCLE[AR]FOLD_A[FTER]FOLD_B[EFORE]FOR[MAT] formatHEA[DING] textJUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}LIKE { expr|alias}NEWL[INE]NEW_V[ALUE] variableNOPRI[NT]|PRI[NT]NUL[L] textOLD_V[ALUE] variableON|OFFWRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]1). 改变缺省的列标题COLUMN column_name HEADING column_headingFor example:Sql>select * from dept;DEPTNO DNAME LOC---------- ---------------------------- ---------10 ACCOUNTING NEW YORKsql>col LOC heading locationsql>select * from dept;DEPTNO DNAME location--------- ---------------------------- -----------10 ACCOUNTING NEW YORK2). 将列名ENAME改为新列名EMPLOYEE NAME并将新列名放在两行上:Sql>select * from empDepartment name Salary---------- ---------- ----------10 aaa 11SQL> COLUMN ENAME HEADING ’Employee|Name’Sql>select * from empEmployeeDepartment name Salary---------- ---------- ----------10 aaa 11note: the col heading turn into two lines from one line.3). 改变列的显示长度:FOR[MAT] formatSql>select empno,ename,job from emp;EMPNO ENAME JOB---------- ---------- ---------7369 SMITH CLERK7499 ALLEN SALESMAN7521 WARD SALESMANSql> col ename format a40EMPNO ENAME JOB---------- ---------------------------------------- ---------7369 SMITH CLERK7499 ALLEN SALESMAN7521 WARD SALESMAN4). 设置列标题的对齐方式JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}SQL> col ename justify centerSQL> /EMPNO ENAME JOB---------- ---------------------------------------- ---------7369 SMITH CLERK7499 ALLEN SALESMAN7521 WARD SALESMAN对于NUMBER型的列,列标题缺省在右边,其它类型的列标题缺省在左边5). 不让一个列显示在屏幕上NOPRI[NT]|PRI[NT]SQL> col job noprintSQL> /EMPNO ENAME---------- ----------------------------------------7369 SMITH7499 ALLEN7521 WARD6). 格式化NUMBER类型列的显示:SQL> COLUMN SAL FORMAT $99,990SQL> /EmployeeDepartment Name Salary Commission---------- ---------- --------- ----------30 ALLEN $1,600 3007). 显示列值时,如果列值为NULL值,用text值代替NULL值COMM NUL[L] textSQL>COL COMM NUL[L] text. 设置一个列的回绕方式WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]COL1--------------------HOW ARE YOU?SQL>COL COL1 FORMAT A5SQL>COL COL1 WRAPPEDCOL1-----HOW ARE YOU?SQL> COL COL1 WORD_WRAPPEDCOL1-----HOWAREYOU?SQL> COL COL1 WORD_WRAPPEDCOL1-----HOW A9). 显示列的当前的显示属性值SQL> COLUMN column_name10). 将所有列的显示属性设为缺省值SQL> CLEAR COLUMNS8. 屏蔽掉一个列中显示的相同的值BREAK ON break_columnSQL> BREAK ON DEPTNOSQL> SELECT DEPTNO, ENAME, SALFROM EMPWHERE SAL < 2500ORDER BY DEPTNO;DEPTNO ENAME SAL---------- ----------- ---------10 CLARK 2450MILLER 130020 SMITH 800ADAMS 11009. 在上面屏蔽掉一个列中显示的相同的值的显示中,每当列值变化时在值变化之前插入n个空行。

BREAK ON break_column SKIP nSQL> BREAK ON DEPTNO SKIP 1SQL> /DEPTNO ENAME SAL---------- ----------- ---------10 CLARK 2450MILLER 130020 SMITH 800ADAMS 110010. 显示对BREAK的设置SQL> BREAK11. 删除6、7的设置SQL> CLEAR BREAKS12. Set 命令:该命令包含许多子命令:SET system_variable valuesystem_variable value 可以是如下的子句之一:APPI[NFO]{ON|OFF|text}ARRAY[SIZE] {15|n}AUTO[COMMIT]{ON|OFF|IMM[EDIATE]|n}AUTOP[RINT] {ON|OFF}AUTORECOVERY [ON|OFF]AUTOT[RACE] {ON|OFF|TRACE[ONLY]} [EX P[LAIN]] [STAT[ISTICS]] BLO[CKTERMINATOR] {.|c}CMDS[EP] {;|c|ON|OFF}COLSEP {_|text}COM[PATIBILITY]{V7|V8|NATIVE}CON[CAT] {.|c|ON|OFF}COPYC[OMMIT] {0|n}COPYTYPECHECK {ON|OFF}DEF[INE] {&|c|ON|OFF}DESCRIBE [DEPTH {1|n|ALL}][LINENUM {ON|OFF}][INDENT {ON|OFF}] ECHO {ON|OFF}EDITF[ILE] file_name[.ext]EMB[EDDED] {ON|OFF}ESC[APE] {|c|ON|OFF}FEED[BACK] {6|n|ON|OFF}FLAGGER {OFF|ENTRY |INTERMED[IATE]|FULL}FLU[SH] {ON|OFF}HEA[DING] {ON|OFF}HEADS[EP] {||c|ON|OFF}INSTANCE [instance_path|LOCAL]LIN[ESIZE] {80|n}LOBOF[FSET] {n|1}LOGSOURCE [pathname]LONG {80|n}LONGC[HUNKSIZE] {80|n}MARK[UP] HTML [ON|OFF] [HEAD text] [BODY text] [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]NEWP[AGE] {1|n|NONE}NULL textNUMF[ORMAT] formatNUM[WIDTH] {10|n}PAGES[IZE] {24|n}PAU[SE] {ON|OFF|text}RECSEP {WR[APPED]|EA[CH]|OFF}RECSEPCHAR {_|c}SERVEROUT[PUT] {ON|OFF} [SIZE n] [FOR[MAT] {WRA[PPED]|WOR[D_ WRAPPED]|TRU[NCATED]}]SHIFT[INOUT] {VIS[IBLE]|INV[ISIBLE]}SHOW[MODE] {ON|OFF}SQLBL[ANKLINES] {ON|OFF}SQLC[ASE] {MIX[ED]|LO[WER]|UP[PER]}SQLCO[NTINUE] {> |text}SQLN[UMBER] {ON|OFF}SQLPRE[FIX] {#|c}SQLP[ROMPT] {SQL>|text}SQLT[ERMINATOR] {;|c|ON|OFF}SUF[FIX] {SQL|text}TAB {ON|OFF}TERM[OUT] {ON|OFF}TI[ME] {ON|OFF}TIMI[NG] {ON|OFF}TRIM[OUT] {ON|OFF}TRIMS[POOL] {ON|OFF}UND[ERLINE] {-|c|ON|OFF}VER[IFY] {ON|OFF}WRA[P] {ON|OFF}1). 设置当前session是否对修改的数据进行自动提交SQL>SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n}2).在用start命令执行一个sql脚本时,是否显示脚本中正在执行的SQL语句SQL> SET ECHO {ON|OFF}3).是否显示当前sql语句查询或修改的行数SQL> SET FEED[BACK] {6|n|ON|OFF}默认只有结果大于6行时才显示结果的行数。

合集下载

Sqlplus的使用

Sqlplus的使用

Sql*plus的使用Sql*plus的使用Sql*plus介绍Sql*plus是oracle提供的一个工具程序,既可以在oracle服务器使用,也可以在oracle 客户端使用。

在windows下分两种,sqlplus.exe是命令行程序,sqlplusw.exe是窗体程序,通常我们在开始菜单中启动的是后者,两者的功能是一致的。

Sql*plus是一个最常用的工具,具有很强的功能,主要有:1. 数据库的维护,如启动,关闭等,这一般在服务器上操作。

2. 执行sql语句执行pl/sql。

3. 执行sql脚本。

4. 数据的导出,报表。

5. 应用程序开发、测试sql/plsql。

6. 生成新的sql脚本。

7. 供应用程序调用,如安装程序中进行脚本的安装。

2 dual表dual是一张系统表,同时也被定义成了public同义词。

它只有一个字段和一条记录。

该表本身的结构和数据没有什么意义,主要是借助该表进行其它操作。

如:select sysdate from dual; --获取函数值select 21+15*3 from dual; --计算表达式的值说明:不要对dual表进行ddl与dml操作,只进行查询操作。

3 sql*plus使用3.1 启动sql*plus1. 不带参数启动启动sqlplusw.exe程序,会弹出登陆框,让输入用户名、密码和连接字符串,在用户名中输入“/nolog”,表示先进入sql>提示符,先不连接数据库,下面可以利用connect命令连接数据库。

启动sqlplus.exe程序,会提示输入用户名与密码。

如果用户名输入2. 带参数启动下面列举一些最常见的方式,还有很多可选参数。

1) 不连接数据库sqlplus /nolog2) 连接数据库sqlplus username/password3) 使用net8连接字符串连接数据库sqlplus username/password@connstr4) 连接后执行filename指定的sql脚本,sql脚本中是sql命令和sql*plus的设置命令sqlplus username/password[@connstr] @filename3.2 sql*plus的命令3.2.1 帮助命令1. help命令格式:help 命令名,用于知道某个具体命令的帮助信息。

sqlplus的使用

sqlplus的使用

前言SQL*PLUS是Oracle公司提供的一个工具程序,可以用于运行SQL语句和PL/SQL程序块、处理数据、生成报表、控制屏幕显示和打印输出。

从Oracle 8i开始,SQL*PLUS还可以用于执行数据库管理操作,包括启动数据库、关闭数据库、备份和恢复数据库等。

SQL*PLUS分两种运行方式:sqlplus.exe 和sqlplusw.exesqlplus.exe是Dos版本sqlplusw.exehttp://192.168.5.2:5560/isqlplus第三方厂商的sql开发工具Sqlplusw比较常用,因为编辑方便。

格式化输出:⏹在使用SQL*Plus执行查询操作时,经常会遇到查询结果的显示格式非常混乱的情况,遇到此种问题时,通常可以使用以下3种方法:⏹忍受它。

⏹查询少量的列。

⏹格式化查询结果。

SET LINESIZE 80; 制定行显示宽度SET PAGESIZE 80; 用于设置每页所显示的行数以上命令只能在sqlplus中为显示方便而使用,编程时不使用。

Sqlplus本身编辑性能比较差,往往使用ed 文件名,打开nodepad,需要确认建立文件,编辑完后,保存退出,在sqlplus界面上,使用@ 文件名形式。

当使用外部文件的sql语句时,用@+绝对路径执行。

如果是sql结尾,则可省略,如c:\sqltest查看某个表格的结构,用DESC(RIBE) tablename;Sqlplus的sql使用快捷指令:R(un)或/ 运行缓存sql指令L(ist)显示缓存内容A 追加内容到缓存C 更新缓存内容CL BUFF 清除Sqlplus的文件支持指令:Sav(e)文件名:保存缓存内容到指定文件中Sta(rt)或@ 文件名:运行一个文件Get 文件名:只载入不运行Spo 文件名/ spo off : 将结果输出到指定文件中Sqlplus对管理的支持:显示当前用户:show user切换用户:conn 用户名/密码[as sysdba]调用非本用户的table,必须写用户名.table建立新用户:create user 用户名identified by 密码给新用户授权:GRANT connect,resource TO 用户名删除用户:DROP user用户名解锁用户:alter user 用户名account unlock;锁定用户:alter user 用户名account lock;修改用户密码:alter user 用户名identified by 密码启动数据库: startup关闭数据库:shutdown immediateDOS指令:HOST dos命令作业:1、在oracle系统中有一个大数据用户账号,是sh,现在处于锁定状态,请将其解锁,并设置其密码为sh。

Oracle的SQLPLUS命令的使用大全

Oracle的SQLPLUS命令的使用大全
7499 ALLEN
7521 WARD
6). 格式化NUMBER类型列的显示:
SQL> COLUMN SAL FORMAT $99,990
SQL> /
Employee
Department Name Salary Commission
---------- ---------- --------- ----------
CLE[AR]
FOLD_A[FTER]
FOLD_B[EFORE]
FOR[MAT] format
HEA[DING] text
JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}
LIKE { expr|alias}
NEWL[INE]
7369 SMITH CLERK
7499 ALLEN SALESMAN
7521 WARD SALESMAN
对于NUMBER型的列,列标题缺省在右边,其它类型的列标题缺省在左边
sql>col LOC heading location
sql>select * from dept;
DEPTNO DNAME location
--------- ---------------------------- -----------
10 ACCOUNTING NEW YORK
note: the col heading turn into two lines from one line.
3). 改变列的显示长度:
FOR[MAT] format
Sql>select empno,ename,job from emp;

sqlplus -s用法

sqlplus -s用法

sqlplus -s用法
sqlplus是Oracle数据库的交互式命令行工具,-s选项是其中的一个参数,表示“静默模式”。

使用-s选项可以在执行sqlplus
命令时,不显示启动和退出信息,只显示查询结果。

这在需要在脚
本或者批处理中执行SQL语句时非常有用,可以避免额外的输出干扰。

举例来说,假设我们有一个脚本文件test.sql包含SQL查询语句,我们可以使用以下命令来执行该脚本并在静默模式下输出结果:
sqlplus-susername/password@*****************.
这样就会在不显示额外信息的情况下执行test.sql中的SQL语句,并将查询结果输出到标准输出。

需要注意的是,-s选项并不会隐藏错误信息,所以在实际使用中,仍然需要对SQL语句的执行结果进行适当的错误处理。

总之,sqlplus -s选项的主要作用是在执行SQL语句时以静默
模式输出结果,适用于需要在脚本或者批处理中执行SQL查询的场景。

Oracle之SQLPlus的运行环境设置

Oracle之SQLPlus的运行环境设置
Oracle之SQL*Plus的运行环境设置
1 SET命令选项
—5—
选项
Hale Waihona Puke Set set numformat format
选 set null text
项 set pause{off|on|text}
及 set pagesize{14|n}
说 set recset {wrapped|each|off}
描述 设置事务处理方式,手动/自动提交 设置是否自动打印变量值 设置为on时,以默认的文件名重做记录,需要恢复时, 使用recover automatic database语句恢复,否则只能用 recover database语句恢复 对正常执行完毕的SQL DML语句自动生成报表信息
定义表示PL/SQL块结束的字符 设置列和列之间的分隔字符,默认为空格 定义命令行区分字符,默认为off。 设置一行中能够显示的总字符数,默认80 为long型数值设置最大显示宽度,默认80 设置每页打印标题前的空行数,默认为1
Linesize 80
SQL>set linesize 110 设置LINESIZE,使得每行能够显
Linesize 110
示110个字符数
Oracle之SQL*Plus的运行环境设置
2 设置运行环境
4.SET TIMING[ON/OFF]选项 该选项用于启动和关闭显示SQL语句执行时间的功能。 说明: ➢ 在SQL*Plus中运行SQL命令时,不同的SQL命
Oracle之SQL*Plus的运行环境设置
2 设置运行环境
—8—
2. SET PAUSE选项 通过设置环境变量PAUSE为ON来控制SQL*Plus在显示完一页后 暂停显示,直到按“Enter”键后才继续显示下一页数据。

Oracle第二讲 SQLPlus的基本使用天津工业大学

Oracle第二讲 SQLPlus的基本使用天津工业大学
Confidential © 2013 iSoftStone Holdings Limited. All Rights Reserved.
2.2.2 SET命令
• 例2.13:下面的查询语句查询了V_$PARAMETER 视图的定义,如果不使用SET LONG命令设置text 列的显示长度则不能完全显示该列的内容。
• 例2.2:以数据库管理员的身份登录到数据库中。
Confidential © 2013 iSoftStone Holdings Limited. All Rights Reserved.
2.1.1 sqlplus命令
• 例2.6:以数据库操作员的身份登录到数据库中。 sqlplus sys/linDB123 as sysoper
tabs;
Confidential © 2013 iSoftStone Holdings Limited. All Rights Reserved. 13
2.2 SQL*Plus常用命令
• 2.2.1 HELP命令。 • 2.2.2 SET命令。 • 2.2.3 SHOW命令。 • 2.2.4 PROMPT命令。 • 2.2.2 SAVE和@命令。 • 2.2.6 EDIT命令。 • 2.2.7 RUN(/)命令。
Confidential © 2013 iSoftStone Holdings Limited. All Rights Reserved.
2.1 登录到数据库
2.1.1 sqlplus命令。 2.1.2 connect命令。
Confidential © 2013 iSoftStone Holdings Limited. All Rights Reserved.
2.2.1 help命令

sqlplus登陆使用

sqlplus登陆使⽤select * from dept;input order by dname; 追加⽂本命令 del n 删除语句celar buffer ; 清除缓冲区的命令conn sys as sysdba 登陆⽤户⼀般只要安装了oracle的服务器端或者客户端,sqlplus都被默认安装。

⽽sqlplusw只是在sqlplus上添加了⼀个窗体,在其上执⾏SQL语句与sqlplus完全相同。

sqlplus的主要应⽤场景为查看/设置参数、执⾏SQL脚本等。

1.利⽤sqlplus登录数据库sqlplus和sqlplusw都是oracle安装⽬录下的可执⾏⽂件。

可以在命令窗⼝中执⾏如下命令进⾏登录。

sqlplus username/password@netservicename其中,username/password为登录数据库所使⽤的⽤户名和密码;netservicename是要进⾏数据库连接的本地Net服务名。

以登录Net服务tst为例,需要在命令⾏中执⾏如下代码:sqlplus system/oracle@tst成功登录tst数据库之后的界⾯如图所⽰:2.查看数据库参数在oracle中,查看数据库参数应该使⽤show parameter命令。

例如,查看当前数据库实例名的命令如下所⽰。

其中,show parameter要求数据库显⽰参数;instance_name为参数名称。

分析执⾏结果可知,当前数据库的实例名为tst。

当然,对于⽤户来说,不可能每次都准确⽆误地指定参数名。

因此,show parameter⽀持部分匹配功能,也就是说,⽤户只需输⼊部分参数名即可。

当⽤户执⾏show parameter instance命令时,oracle将所有包含instance字样的参数全部显⽰给⽤户。

注意,此处的show parameter命令,不⽀持通配符。

3.关闭/启动数据库(1)以DBA⾝份登录数据库在数据库服务器的本机上,可以⽆需输⼊⽤户名/密码;as sysdba表⽰以数据库管理员⾝份登录数据库。

sqlplus使用教程

Sqlplus基本操作1.登陆用户:sqlplus /as sysdba --以操作系统权限认证的oracle sys管理员登陆conn /as sysdba --不在cmd或者terminal当中暴露密码的登陆方式sqlplus scott/tiger --非管理员用户登陆sqlplus scott/tiger@orcl --非管理员用户使用tns别名登陆sqlplus sys/password@orcl as sysdba --管理员用户使用tns别名登陆sqlplus --不显露密码的登陆方式Enter user-name:sysEnter password:password as sysdba--以sys用户登陆的话必须要加上 as sysdba 子句cmd下登陆:sqlplus /nolog --进入sqlplus环境,如果直接打来sqlplus则不用这一步conn /as sysdba --以系统管理员身份(sysdba)登陆数据库2.用户管理系统用户sys;//系统管理员,拥有最高权限system;//本地管理员,次高权限scott;//普通用户,密码默认为tiger,默认未解锁登陆sqlplus / as sysdba;//登陆sys帐户sqlplus sys as sysdba;//登陆sys账户,方法二sqlplus scott/tiger;//登陆普通用户scott管理用户create user starive;//在管理员帐户下,创建用户starivealert user scott identified by tiger;//修改密码解锁scott用户:cmd下sqlplus /nolog --进入sqlplus环境conn /as sysdba --以系统管理员身份(sysdba)登陆数据库也可:sqlplus请输入用户名:sys输入口令:sys as sysdba //注意:在口令这里输入的密码后面必须要跟上as sysdba 才可以然后:alter user scott account unlock;commit;conn scott/tiger输入新口令:tiger。

sqlplus常用语句

sqlplus常用语句
SQLPlus是Oracle数据库中常用的交互式命令行工具,用于执行SQL语句和PL/SQL块。

以下是一些常用的SQLPlus语句:
1. 连接到数据库:
SQLPLUS username/password@database.
2. 退出SQLPlus:
EXIT 或 QUIT.
3. 执行SQL查询:
SELECT FROM table_name;
4. 显示表结构:
DESC table_name;
5. 执行存储过程或函数:
EXEC procedure_name;
6. 执行SQL脚本:
@path_to_script.sql.
7. 输出查询结果到文件:
SPOOL file_name.
8. 取消输出到文件:
SPOOL OFF.
9. 显示当前数据库会话信息: SHOW USER.
10. 设置SQLPlus环境变量:
SET option value.
这些是一些常用的SQLPlus语句,可以帮助你在SQLPlus中执行各种操作。

当然,SQLPlus还有很多其他命令和选项,具体使用取决于你的需求和情境。

希望这些信息能够帮助到你。

sqlPlus操作指南

name sal HIREDATE
---------- ------------------- -------------------
SCOTT ¥3000.00 04/19/1987 00:00:00
(2)在windows环境中运行sql*plus
如果在windows环境中安装了oralce数据库产品,那么可以在窗口环境中运行sql*plus
具体方法: "开始->程序->oracle-oradb10g_home1->application development->sql*plus"
2.连接命令
sql>col ename clear
sql>col sal clear
sql>select ename,sal,hiredate from emp
sql>where empno=7788;
(2)title
该命令用于指定页标题,页标题会自动显示在页的中央。如果页标题由多个词组成,则用单引号引住。如果要将页
SQL> l
1 select ename
2* from emp
如果一次要删除多行,则指定起始行号和终止行号,例如"del 3 5"
(5)i[nput]
该命令用于在sql缓冲区的当前行后新增加一行。示例如下:
SQL> l
1 select ename
3* where deptno=10
sql>a and job='CLERK'
sql>l
SQL> list
1 select empno,ename,sal,hiredate,comm,deptno
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档