一、SQL Plus介绍

 1.简介

 Oracle的sql plus是与oracle进行交互的客户端工具。在sql plus中,可以运行sql plus命令与sql语句。
  我们通常所说的DMLDDLDCL语句都是sql语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。
  除了sql语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。

 2.功能

  SQL*Plus主要用于数据的查询和处理,利用该工具可以将SQL和Oracle专有的PL/SQL结合起来进行数据查询及处理。它具有以下功能:

  • 对数据表进行插入、修改、删除、查询操作,以及执行SQL和PL/SQL块;
  • 查询结果格式化、运算处理、保存、打印及输出WEB格式;
  • 显示任何一个的表的字段定义,并与终端用户交互;
  • 连接数据库,定义变量;
  • 完成数据库管理;
  • 运行存储在数据库中的子程序或包。
  • 启动/停止数据库实例等。

二、SQL Plus操作

1.连接数据库

  使用SQL Plus连接数据库主要有两种方式,下面分别介绍。

 (1)通过安装程序

  1>执行【开始】-【所有程序】-Oracle - OraDb11g_home1-【应用程序开发】-SQL Plus,打开SQL Plus登录界面,如图2

图1

图2

  2>在启动的命令窗口输入正确的用户名和口令后按ENTER键,此时SQL Plus将连接到数据库。

图3

  3>在数据库连接成功后出现SQL>后,就可以执行SQL Plus命令,例如我们输入查询语句“select * from dept;”,在SQL语句中,英文状态下的分号是sql语句结束的标志,我们输入的查询语句运行如下图:

图4

(2)通过命令启动

  通过命令启动,可以使用sqlplus命令,语法如下:

  sqlplus [username/password@host]

  username:表示数据库的用户名;

  password:标书数据库用户密码;

  host:标书要连接的数据库字符串。

  1>选择【开始】-【运行】-【cmd】-【ENTER】-【dos窗口】,然后在dos窗口中输入“sqlplus scott/oracle@orcl”命令,按Enter键提示连接到数据库。

  

图5

图6

图7

                                                       

图8

  当然,为了安全起见,我们连接数据库时可以隐藏密码输入,“sqlplus scott@orcl”,提示输入密码时,我们输入口令密码即可。这样可以有效防止密码被泄露。

2.断开数据库连接

  通过输入‘disconnect’命令可以断开数据库连接,并保持SQL Plus继续运行,需要再连接数据库是输入‘connect scott/orcle@orcl’即可。

图9

图10

  我们需要退出SQL Plus时可以输入exit命令回车即可。

图11

3.查看表结构

  命令如下:(该命令可简化为:desc table_name;)

describe table_name;

  

图12

4.编辑SQL语句

  SQL Plus可以在缓冲区中保存前面输入的SQL语句,所以可以编辑缓冲区中保存的内容来构建自己的SQL语句,这样省时省力不用重复输入相同的语句,我们常见的编辑命令如下表:

命令 说明
A[PPEND] PARAM  将PARAM添加到当前行的结尾
C[HANGE] /PARAM1/PARAM2 将当前行中的PARAM1替换成PARAM2
C[HANGE] /PARAM 从当前行删除PARAM
CL[EAR] BUFF[ER]  删除缓冲区中的所有行
DEL n     删除第n行
DEL  删除当前行
DEL n LAST   删除第n行到最后一行
I[NPUT] PARAM 当前行后添加新行 内容PARAM
L[IST] 显示所有行
L[IST] n 或 n  显示第n行 并设置其为当前行
L[IST] m n  显示第m行到第n行
L[IST] *  显示当前行
R[UN]  显示缓存区中的内容和运行结果,并使sql缓存区中的最后一行成为当前行
/   只显示缓存内容的运行结果

  下面我们简单的举几个例子了解下编辑命令的使用:

  我们查询部门表部门号为10 的部门,我们在书写sql,语句很长时可以回车换行。

图13

  查询结束时,可以在在提示符后面输入1,将第一行作为当前行。

图14

图15

  我们继续使用append命令在显示的第一行中添加LOC列,即添加“,loc”。

图16

图17

  从上面图片中我们看出,loc列已经添加进去,我们在使用list命令显示缓冲区中所以行,如下图:

图18

图19

  根据上图显示,现在当前行已成为最后一行,以*号指示。下面我们用change命令将deptno=10修改deptno=20,查询部门为20的数据。

图20图21

  此时我们将where条件修改完成,下面使用run命令进行语句执行,

图22

图23

图24

我们也可以使用斜杠(/)命令来运行缓冲区中保存的SQL语句,如下图:

图25

5.保存、检索并运行文件

SQL Plus可以保存、检索并运行包含SQL Plus命令和SQL语句脚本,常见命令如下:

SAV[E] filename [REP[LACE]APP[END]]

将缓冲区的命令以文件方式存盘,缺省文件扩展名为.sql,如果使用APPEND则想一个已存在的文件追加内容,如果使用REPLACE则是覆盖一个已经存在文件。

GET filename

调入存盘的sql文件

STA[RT]filename

运行调入内存中的sql文件

@filename

运行调入内存中的sql文件,和START一样

ED[IT]

打开默认编辑器,Windows系统中默认的是notepad.exe,把缓冲区中最后一条SQL语句调入afiedt.buf文件中进行编辑。

ED[IT]filename

把当前目录中指定的.sql文件调入编辑器进行编辑。

SPO

显示当前“假脱机”状态

SPO filename

把操作及执行结果“假脱机”,即保存到磁盘文件上,默认文件扩展名为.lst

SPO OFF

停止输出

SPO ON

停止输出并将结果送到系统打印机

EXIT

退出SQL * plus

  我们已例子讲解几个命令的使用。

  (1)输入sql语句

图26

(2)使用save命令经缓冲区内容保存到名为dept.sql文件:

图27

(3)使用get命令检索dept.sql文件内容:

图28

(4)使用run命令运行此查询:

图29

(5)使用edit命令编辑sql plus缓冲区内容:

图30

  此时会启动系统默认的txt编辑器,我们修改where子句为“where deptno=20”,保存文件并退出编辑器。(sql语句中以/杠为结束标志)

(6) 使用‘/’运行刚才的语句:

图31

6.使用SQL Plus格式化查询结果

  在SQL Plus中,当用户执行查询的时候会以行和列的方式返回数据,在这里可以使用column命令可以显示属性。

(1)格式化列

  用column命令对输出的列进行格式化,语法如下:

  column {column | alias}  [options]

    其中column:指定列名;

       alias:指定要格式化的列的别名;

                 options:指定用于格式化列和别名的一个或多个选项。

  下为部门格式化选项:

选项 说明
FOR[MAT]format 将列或列名的显示格式设置为由format字符串指定的格式
HEA[DING]heading 将列或列名的标题中的文字设置为由heading字符串指定的格式

JUS[TIFY]

[{LEFT|CENTER|RIGHT}]

将列输出设置为左对齐、居中或右对齐

WRA[PPED]

在输出结果中将一个字符串的末尾换行显示。该选项可能导致单个词跨越多行

WOR[D_WRAPPED]

与WRAPPED选项类似,不同之处在于单个词不会跨越多行

CLE[AR]

清楚列的任何格式化(将格式设置回默认值)

  

图32

  上面例子我们将列显示为中文名字,将‘雇员名’列设置宽度设置13个字符,将‘工资’列显示加上美元符号,但是显示分两次显示页面不是很美观,下面我们会介绍如何调整页面显示。

  (2)设置页面大小

  一页显示的行数可以使用set pagesize命令来设置,该命令设置的是输出结果一页应该显示的行数,超过设置的行数后就会再次显示标题。

  我们用set pagesize命令将页面大小设置为30行,用斜杠命令再次运行上次语句:

  

图33

  (3)设置行大小

  一行显示的字符数可以使用set linesize命令设置。下面以设置行大小20为例,查询工资大于2000的雇员信息。

  

图34

  上面由于一行显示字符20个,所以超出的部门全部换行显示。

(4)清除列格式

   列的格式可以使用column命令加上clear选项来清除。

  

图35

  使用clear columns命令可以清除所以列的格式化:

  clear cloumns;

  一但清除列的格式化后,查询输出的结果就使用该列的默认格式。

Oracle数据库连接工具的使用(二)的更多相关文章

  1. Oracle数据库基础入门《二》Oracle内存结构

    Oracle数据库基础入门<二>Oracle内存结构 Oracle 的内存由系统全局区(System Global Area,简称 SGA)和程序全局区(Program Global Ar ...

  2. 细说Oracle数据库与操作系统存储管理二三事

    在上大学的时候,学习操作系统感觉特别枯燥,都是些条条框框的知识点,感觉和实际应用的关联不大.发现越是工作以后,在工作中越想深入了解,发现操作系统知识越发重要.在实践中结合理论还是不错的一种学习方法.自 ...

  3. Oracle数据库连接工具的使用(三)

    一.PL/SQL Developer介绍 1.简介 PL/SQL Developer是一个集成开发环境,专门开发面向Oracle数据库的应用.PL/SQL也是一种程序语言,叫做过程化SQL语言(Pro ...

  4. hive表增量抽取到oracle数据库的通用程序(二)

    hive表增量抽取到oracle数据库的通用程序(一) 前一篇介绍了java程序的如何编写.使用以及引用到的依赖包.这篇接着上一篇来介绍如何在oozie中使用该java程序. 在我的业务中,分为两段: ...

  5. Linux 下面 oracle 数据库连接工具的安装还有特殊字符密码登录的设置

    1. 下载Oracle的连接客户端 https://www.oracle.com/database/technologies/instant-client/downloads.html 2. 我这里仅 ...

  6. Oracle数据库连接工具的使用(一)

    一.企业管理器(OEM) 1.介绍 Oracle企业管理器(Oracle Enterprise Manager)简称OEM,是一个基于Java的框架系统,该系统集成了多个组件,为用户提供了一个功能强大 ...

  7. Java连接Oracle数据库开发银行管理系统【二、设计篇】

    一.总体分析     此系统的实现并不难,但是如何更好的设计出实现方式还是需要更深入的分析,例如:如果再增加其他功能,是不是需要变动的 代码很少,只是直接再增加一点功能就可以了呢?如果使用的不是Ora ...

  8. Oracle数据库操作---基础使用(二)

    此篇承接上一篇的基本原理,继续展开学习,本篇主要面向数据的使用和管理,也就是开发者常用的基础语句,开始喽…… >>>对整表的操作 >创建表   关键字 Create creat ...

  9. WUST Oracle数据库 实验一实验二

    链接:https://pan.baidu.com/s/1hCzvTLzXhyItP2gD_69gzg 提取码:j68f 复制这段内容后打开百度网盘手机App,操作更方便哦

随机推荐

  1. kindeditor实现ctrl+v粘贴word图片并上传

    Chrome+IE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧?Chrome高版本提供了可以将单张图片转换在BASE64字符串的功能.但是无法 ...

  2. AT3913 XOR Tree(巧妙转换+状压dp)

    Step1:首先定义一个点的权值为与其相连边的异或和.那么修改一条路径,权值改变的只有两个端点.边权都为0和点权都为0实质相同. Step2:那么现在和树的结构就没有什么关系了.每次选两个点,然后同时 ...

  3. Ubuntu14.04 dd命令克隆系统镜像安装到另一台机器上

    linux系统如果想做备份还原,使用ghost的时候经常出现问题,后来发现可以直接使用dd命令完成硬盘的克隆和还原.当拷贝完硬盘后,就可以拿这个硬盘放到其它设备上跑了.也就是完成了“烧写”了. 用U盘 ...

  4. spring-boot-starter-test

    1.约定 单元测试代码写在src/test/java目录下 单元测试类命名为*Test,前缀为要测试的类名 2. 使用mock方式单元测试 Spring测试框架提供MockMvc对象,可以在不需要客户 ...

  5. 微信小程序之简单记账本开发记录(一)

    下载并安装微信开发者工具 在选择开发记账本程序的时候犹豫着选择android studio还是微信小程序 最后选择了微信小程序,因其便利和快捷. 话不多说,第一步,下载并安装微信开发者工具.下面是教程 ...

  6. linux 后台 运行

    但是如果终端关闭的话,程序也会终止,那么就要涉及到linux的一个十分强大的命令:screen. 按照我个人的理解,这个命令就是能够在linux中创造出多个终端,在已有的窗口内部再创造更多的窗口,结合 ...

  7. pwn学习日记Day20 《程序员的自我修养》读书笔记

    可执行文件的装载与进程 覆盖装入和页映射是两种典型的动态装载方法 进程建立的三步 1.创建一个独立的虚拟地址空间 2.读取可执行文件头,并且建立虚拟空间与可执行文件的映射关系. 3.将CPU的指令寄存 ...

  8. pwn学习日记Day13 《程序员的自我修养》读书笔记

    重定位就是把程序的逻辑地址空间变换成内存中的实际物理地址空间的过程.它是实现多道程序在内存中同时运行的基础.重定位有两种,分别是动态重定位与静态重定位. 静态重定位:即在程序装入内存的过程中完成,是指 ...

  9. Geth安装和使用

      版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011680118/article/details/82378509 一.简介 Geth是Go ...

  10. JNI调用C和C++存在的区别

    JNI调用C和C++存在的区别   JNI是由C语言定义接口的,JNI通过函数名找函数入口,执行函数里的内容.这和函数用什么语言生成的并没有关系.只要保证函数名称符合JNI的协议.而使用C++要注意的 ...