登陆,用户解锁

      使用oracle 10g windows版本,可直接安装到windows xp操作系统之上。使用sqlplus登陆数据库。

所有程序——oracle 10g —— 应用程序开发 —— sqlplus   /   使用命令行模式  sqlplus  用户/密码@数据库名称           (数据库名称可使用配置移植工具中的net manager添加)

本地登陆使用 sqlplus / as sysdba 不需账号密码使用sys登陆到数据库。

查看用户

p_w_picpath

使用sys用户解锁scott用户(默认锁定)

p_w_picpath

登陆scott用户

ORACLE sqlplus基本操作_第1张图片

查看数据字典的结构

ORACLE sqlplus基本操作_第2张图片

通过数据字典中的TABLE_NAME查看包含哪些表

ORACLE sqlplus基本操作_第3张图片

查看EMP表的类型结构

ORACLE sqlplus基本操作_第4张图片

使用SELECT语句查看EMP中所有的数据 (通过SET LINE 120 设置每行显示最大字节为120)

ORACLE sqlplus基本操作_第5张图片

查询员工中SAL大于3000的员工号和员工名

ORACLE sqlplus基本操作_第6张图片

可以使用RUN和/执行上次执行的命令

ORACLE sqlplus基本操作_第7张图片

使用RUN 会显示上次执行的什么语句,而/ 不显示。

也可以通过LIST只显示上次执行的语句,而不执行。

p_w_picpath

使用LIST命令之后,可以通过A对其中一行追加,DEL删除,C修改。

ORACLE sqlplus基本操作_第8张图片

显示员工SAL+COMM的值,并将列名改为AA

ORACLE sqlplus基本操作_第9张图片

显示员工KING的员工号

p_w_picpath

显示员工1年的工作情况

ORACLE sqlplus基本操作_第10张图片

使用连接符||

ORACLE sqlplus基本操作_第11张图片

如果被包含在‘’中的字符串含有‘’号,使用转义的方法去掉字符串中‘’的特殊意义。

ORACLE sqlplus基本操作_第12张图片

ORACLE sqlplus基本操作_第13张图片

表中的空值进行任何运算结果都为空

ORACLE sqlplus基本操作_第14张图片

SQL 语言与 SQLPLUS 的区别

SQLPLUS是执行SQL语句的一种环境,SQLPLUS命令可以缩写,SQL语句不行,而SQLPLUS不能改变数据库的值。

查询EMP表中SAL为1000,2000,3000的员工

ORACLE sqlplus基本操作_第15张图片

查询SAL在1000到2000之间的员工 

ORACLE sqlplus基本操作_第16张图片

查询SAL不是1000的员工

ORACLE sqlplus基本操作_第17张图片

查询员工名称中包括A的员工

ORACLE sqlplus基本操作_第18张图片 

查询员工名称中第一个字母为A的员工

ORACLE sqlplus基本操作_第19张图片

查询员工名称中第二个字母为A的员工

ORACLE sqlplus基本操作_第20张图片

可以使用 \ 转义下一个字符,使下一个特殊字符不包含特殊意义。

查询员工中没有COMM的员工

ORACLE sqlplus基本操作_第21张图片

查询员工中COMM不是空值的员工

ORACLE sqlplus基本操作_第22张图片

优先级排列顺序

算数运算符〉连接符〉比较符〉NOT,AND,OR

查询员工名称中有A的,并且SAL大于1000的员工

ORACLE sqlplus基本操作_第23张图片

ORDER BY  排序,出现在语句的最后方,后跟ASC为升序DESC为降序。

查询EMP表并且以SAL为轴的升序排列(默认为ASC)

ORACLE sqlplus基本操作_第24张图片

查询EMP表根据DEPTNO排序,如果DEPTNO相同,根据SAL排序

ORACLE sqlplus基本操作_第25张图片

查询EMP表,以DEPTNO排序为升序,SAL降序

ORACLE sqlplus基本操作_第26张图片

ABS 求绝对值  MOD  求余数

ORACLE sqlplus基本操作_第27张图片

ROUND精确  四舍五入(-1为四舍五入到小数点左边一位=十位)

p_w_picpath

TRUNC截取到哪一位

SQRT平方根

LOWER 将字符串改为小写

ORACLE sqlplus基本操作_第28张图片

INITCAP 将首字母改为大写

ORACLE sqlplus基本操作_第29张图片

SUBSTR截取第N位之后的字符

p_w_picpath 

截取第3位以后的字符,并且只截取两位

p_w_picpath

INSTR取位数

p_w_picpath

取从第4位起,第二个出现的L

ORACLE sqlplus基本操作_第30张图片

LPAD 补齐(补齐左边)

RPAD 补齐(补齐右边)

ORACLE sqlplus基本操作_第31张图片

TRIM去头尾

ORACLE sqlplus基本操作_第32张图片

只去头部,或者只去尾部

ORACLE sqlplus基本操作_第33张图片

REPLACE 替换

ORACLE sqlplus基本操作_第34张图片

查看系统时间

ORACLE sqlplus基本操作_第35张图片

TO_CHAR 数字转换为字符串

p_w_picpath

TO_DATE 将字符串转换为日期

ORACLE sqlplus基本操作_第36张图片

将字符串转换为数字

p_w_picpath

将左右两边都转换为数字

ORACLE sqlplus基本操作_第37张图片

以字符模式显示系统时间,并显示时分秒和周

ORACLE sqlplus基本操作_第38张图片

使用TO_CHAR可以将日期数字转换为字符串

ORACLE sqlplus基本操作_第39张图片

查询员工收入情况,包括SAL和COMM 使用NVL(在两个值中取第一个非空值)

ORACLE sqlplus基本操作_第40张图片

取第一个不为空的值

ORACLE sqlplus基本操作_第41张图片

如果两个值不相同,则返回第一个值(相同则不返回)

ORACLE sqlplus基本操作_第42张图片

计算COMM,在EMP表中,不同的JOB COMM不同

ORACLE sqlplus基本操作_第43张图片

JOB为MANAGER COMM=SAL*0.2 其他为SAL*0.1

ORACLE sqlplus基本操作_第44张图片

等值连接  利用相同列进行连接

ORACLE sqlplus基本操作_第45张图片

非等值连接

查看EMP表中的SAL在SALGRADE中的SAL等级

ORACLE sqlplus基本操作_第46张图片

自连接

在EMP表中,MGR=别人的EMPNO

ORACLE sqlplus基本操作_第47张图片

外连接

与等值连接相同,但要求能查询出第一张表比第二张表的差值

ORACLE sqlplus基本操作_第48张图片

AVG平均值  SAM总和  COUNT 统计  MAX最大  MIN最小

COUNT(*)返回所有行数,包括空值

ORACLE sqlplus基本操作_第49张图片

当使用嵌套函数,必须使用GROUD BY

ORACLE sqlplus基本操作_第50张图片

子查询

查询比SCOTT SAL高的

ORACLE sqlplus基本操作_第51张图片

查询跟SCOTT一个部门且SAL比他低

p_w_picpath

 

 

查询比平均SAL高的

ORACLE sqlplus基本操作_第52张图片

查询SAL比SALESMAN低的员工

ORACLE sqlplus基本操作_第53张图片

查询工资比SALESMAN SAL高的

ORACLE sqlplus基本操作_第54张图片

查询与SCOTT职务相同,但入职更早的

p_w_picpath

 

 

 

多列查询

查询与SCOTT部门相同,职位相同

p_w_picpath

查询EMP表中 第6位到第9位的员工

ORACLE sqlplus基本操作_第55张图片

集合运算

UNION 去掉重复项

UNION ALL 保留重复项

MINUS 取差值

INTERSECT  取两个结果中相同的部分

查询部门10和20所有职务

ORACLE sqlplus基本操作_第56张图片

查询部门10和部门20相同的职务

ORACLE sqlplus基本操作_第57张图片

查询只在DEPT出现没有在EMP出现的部门

ORACLE sqlplus基本操作_第58张图片

DCL 数据库控制语言  用于控制数据库的启动和关闭

DDL 定义语言 用来创建 删除 修改数据库对象

DML 添加删除查询数据库内容

事物控制语言 实现对数据的交易过程完整控制

INSERT 插入信行

UPDATE 修改已存行

DELETE 删除已存行

INSERT INTO 表名(字段) VLUSES(表达式)

插入1行  ENAME为小李 JOB为CLERK

p_w_picpath

从另一张表中复制内容

INSERT INTO 表名(字段) SELECT (字段) FROM 表名

ORACLE sqlplus基本操作_第59张图片

从EMP表中插入内容到新表MANAGER中

p_w_picpath

创建一个以2000开头增量为1的序列,最大值为9999 并且循环不缓存

p_w_picpath

使用序列

p_w_picpath

UPDATE 表名 SET 字段 = 表达式 WHERE 条件

p_w_picpath

修改时间 ( 将EMPNO为1000的员工的HIREDATE改为现在)

p_w_picpath

所有员工SAL+100

p_w_picpath

UPDATE 表名 SET (字段) = SELECT (字段) FROM 另一张表 WHERE 条件

DELETE 删除

DELETE FROM 表名 WHERE 条件

TRUNCATE TABLE 表名   也可删除

区别:  TRUNCATE  删除数据不删除表结构 而且不能回退

数据库事物操作

优点

1. 把逻辑相关的操作分成一个组

2.在数据永久改变之前,可预览数据变化

3.保证数据一致性

数据库事物操作分为隐示,显示

正常退出SQLPLUS 则提交,数据变化保存 =  COMMIT

不正常退出则不保存

也可将环境变量AUTOCOMMIT 状态改为ON 则每次修改都进行保存

方法: SET AUTOCOMMIT ON

建立保存点,则回退时可回退到保存点

SAVEPOINT 保存点名称; 创建保存点

使用ROLLBACK TO 保存点名称; 回到保存点

直接使用ROLLBACK; 为回退。