SQL*PLUS 常用命令

1.连接数据库的命令格式:
CONNECT 用户/口令@主机字符串
SQL>CONNECT system/systempwd@orcl


以orcl的示例用户登录
SQL>CONN scott/tiger@orcl


查看当前连接到数据库的用户
SQL>show user


曾用如下命令以 SYSDBA 身份连接到数据库
SQL>CONN/@ORCL AS SYSDBA


ORCL 设计了两种验证这类用户的方法:一种是将验证集成到服务器操作系统,在服务器操作中建立Oracle DBA 用户组,只要是数据改组
的用户均可执行Orcl DBA 操作。
如下命令中的用户和口令随便输入的,也能以DBA 身份连接到数据库,命令及提示信息如下:
SQL>CONN fcgh3l/vhasd@orcl AS SYSDBA
SQL>SHOW USER
USER 为“SYS”




另一种验证DBA身份用户的方法是通过Orcl口令文件,连接使用DISCONNECT命令
SQL>DISCONNECT
该命令也可缩写为4个字符“DISC”;


2.查看表结构


查询scott 用户下的emp 表的结构
SQL>CONN scott/tiger@orcl
SQL>DESC emp


写出查询emp表中部门号为10员工前两个字段的查询语句,语句要求分三行输入,第一行select部分,第二行from部分,地三行where部分。
Select empno,ename
From emp

Where empnt = 10;


3.命令行编辑命令
APPEND text    : text行尾增加
CHANGE/old/new :在当前行中奖old改为nwe
CHANGE/text :从当前行中删除test
LEAR BUFFER :删除SQL缓冲区中的所有行
DEL :删除当前航
INPUT :增加一行或多行

LIST :显示SQL缓冲区中的所有行
LIST n :显示缓冲区中的一行;
LIST * :显示当前行
LIST LAST :显示最后一行;
LIST m  n   :显示多行(从m 到n);


LIST:
显示当前SQL缓冲区的内容
LIST n 显示第n行的内容
LIST M n 显示从m 到n 行
LIST * 显示当前航的内容
CHANGE
从当前航中删除一部分内容,或者用新的内容替换原先的内容
先用一个LIST命令选择当前行
CHANGE /old/new 
CHANGE /OLD 删除old
APPEND
在当前航末尾追加内容
用LIST命令讲需要追加的内容的行置为当前行,然后用APPEND text
命令在当前行末尾追加内容。


DEL 
删除当前行
DEL N  删除第N行
DEL     N  LAST 删除第N行到最后一行;

CLEAR  BUFFER
(清除缓存)删除缓冲区中的所有行


EDIT 命令
调用一个操作系统提供的文本编辑器。编辑SQL缓冲区里的内容后caozuoxt下的文本文件

脚本文件:讲SQL语句保存到一个文本文件中在sqlplus中装入并执行该文件,默认扩展名为.sql

  显示当前缓冲区内容,使第一行成为当前行,并在其后添加“,deptno”。
   使最后一行成为当前行,在当前行后添加一新行,“where deptno=10”。
   将最后一行的10改为20,重新执行该命令。
   删除最后一行,重新执行该命令。


SQL>LIST
SQL>LIST 1
SQL>APPEND ,deptno


SQL>LIST LAST
SQL>APPEND where deptno = 10


SQL>CHANGE 10/20
SQL>/


SQL>LIST LAST
SQL>DEL




格式化查询结果
1.格式化列
对查询结果中的列的格式进行设置
Column 列明  格式化列选项


设置列标题
使用列明和列表达式名作为缺省列标题
格式:
column 列明 heading 列标题
例:column deptno heading 部门
    column ename heading 姓名
    select deptno,ename from emp;


2.设置列的格式
讲列的现实格式设置为由format 指定的格式现实。


格式:column 列名 format 格式




 查询语句:
使用自查询从其他表中提取数据插入指定表中;
intsert into 表明(列名,...)
select 列名,...
from 表名


例:创建表
create table ed
(empno number(4),ename varchar2(9),dname varchar2(14));


将emp和dept表中相关数据加入该表
insert into ed
select empno,ename,dname
form emp,dept
where emp.deptno = dept.deptno;


从crcl数据库通过数据库链接向数据库cemerp的表emp插入记录
insert into  emp@orcl_cemerp_dblink(deptno,ename,empno,sal,comm,mgr)
select deptno,ename,empno,sal,comm,mgr from emp;



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值