登陆,用户解锁

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

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

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

查看用户

ORACLE sqlplus基本操作_应用程序

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

ORACLE sqlplus基本操作_数据库_02

登陆scott用户

ORACLE sqlplus基本操作_oracle_03

查看数据字典的结构

ORACLE sqlplus基本操作_操作系统_04

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

ORACLE sqlplus基本操作_oracle_05

查看EMP表的类型结构

ORACLE sqlplus基本操作_操作系统_06

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

ORACLE sqlplus基本操作_操作系统_07

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

ORACLE sqlplus基本操作_oracle_08

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

ORACLE sqlplus基本操作_oracle_09

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

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

ORACLE sqlplus基本操作_oracle_10

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

ORACLE sqlplus基本操作_应用程序_11

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

ORACLE sqlplus基本操作_oracle_12

显示员工KING的员工号

ORACLE sqlplus基本操作_windows_13

显示员工1年的工作情况

ORACLE sqlplus基本操作_应用程序_14

使用连接符||

ORACLE sqlplus基本操作_应用程序_15

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

ORACLE sqlplus基本操作_oracle_16

ORACLE sqlplus基本操作_应用程序_17

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

ORACLE sqlplus基本操作_oracle_18

SQL 语言与 SQLPLUS 的区别

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

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

ORACLE sqlplus基本操作_windows_19

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

ORACLE sqlplus基本操作_oracle_20

查询SAL不是1000的员工

ORACLE sqlplus基本操作_数据库_21

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

ORACLE sqlplus基本操作_操作系统_22 

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

ORACLE sqlplus基本操作_oracle_23

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

ORACLE sqlplus基本操作_操作系统_24

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

查询员工中没有COMM的员工

ORACLE sqlplus基本操作_oracle_25

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

ORACLE sqlplus基本操作_数据库_26

优先级排列顺序

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

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

ORACLE sqlplus基本操作_oracle_27

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

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

ORACLE sqlplus基本操作_操作系统_28

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

ORACLE sqlplus基本操作_应用程序_29

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

ORACLE sqlplus基本操作_操作系统_30

ABS 求绝对值  MOD  求余数

ORACLE sqlplus基本操作_oracle_31

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

ORACLE sqlplus基本操作_oracle_32

TRUNC截取到哪一位

SQRT平方根

LOWER 将字符串改为小写

ORACLE sqlplus基本操作_数据库_33

INITCAP 将首字母改为大写

ORACLE sqlplus基本操作_应用程序_34

SUBSTR截取第N位之后的字符

ORACLE sqlplus基本操作_数据库_35 

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

ORACLE sqlplus基本操作_windows_36

INSTR取位数

ORACLE sqlplus基本操作_应用程序_37

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

ORACLE sqlplus基本操作_操作系统_38

LPAD 补齐(补齐左边)

RPAD 补齐(补齐右边)

ORACLE sqlplus基本操作_windows_39

TRIM去头尾

ORACLE sqlplus基本操作_数据库_40

只去头部,或者只去尾部

ORACLE sqlplus基本操作_应用程序_41

REPLACE 替换

ORACLE sqlplus基本操作_应用程序_42

查看系统时间

ORACLE sqlplus基本操作_应用程序_43

TO_CHAR 数字转换为字符串

ORACLE sqlplus基本操作_oracle_44

TO_DATE 将字符串转换为日期

ORACLE sqlplus基本操作_应用程序_45

将字符串转换为数字

ORACLE sqlplus基本操作_应用程序_46

将左右两边都转换为数字

ORACLE sqlplus基本操作_数据库_47

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

ORACLE sqlplus基本操作_oracle_48

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

ORACLE sqlplus基本操作_windows_49

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

ORACLE sqlplus基本操作_数据库_50

取第一个不为空的值

ORACLE sqlplus基本操作_应用程序_51

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

ORACLE sqlplus基本操作_数据库_52

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

ORACLE sqlplus基本操作_windows_53

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

ORACLE sqlplus基本操作_windows_54

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

ORACLE sqlplus基本操作_操作系统_55

非等值连接

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

ORACLE sqlplus基本操作_oracle_56

自连接

在EMP表中,MGR=别人的EMPNO

ORACLE sqlplus基本操作_数据库_57

外连接

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

ORACLE sqlplus基本操作_oracle_58

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

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

ORACLE sqlplus基本操作_数据库_59

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

ORACLE sqlplus基本操作_应用程序_60

子查询

查询比SCOTT SAL高的

ORACLE sqlplus基本操作_oracle_61

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

ORACLE sqlplus基本操作_数据库_62

 

 

查询比平均SAL高的

ORACLE sqlplus基本操作_操作系统_63

查询SAL比SALESMAN低的员工

ORACLE sqlplus基本操作_windows_64

查询工资比SALESMAN SAL高的

ORACLE sqlplus基本操作_操作系统_65

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

ORACLE sqlplus基本操作_windows_66

 

 

 

多列查询

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

ORACLE sqlplus基本操作_应用程序_67

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

ORACLE sqlplus基本操作_oracle_68

集合运算

UNION 去掉重复项

UNION ALL 保留重复项

MINUS 取差值

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

查询部门10和20所有职务

ORACLE sqlplus基本操作_oracle_69

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

ORACLE sqlplus基本操作_oracle_70

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

ORACLE sqlplus基本操作_操作系统_71

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

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

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

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

INSERT 插入信行

UPDATE 修改已存行

DELETE 删除已存行

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

插入1行  ENAME为小李 JOB为CLERK

ORACLE sqlplus基本操作_操作系统_72

从另一张表中复制内容

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

ORACLE sqlplus基本操作_操作系统_73

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

ORACLE sqlplus基本操作_oracle_74

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

ORACLE sqlplus基本操作_数据库_75

使用序列

ORACLE sqlplus基本操作_windows_76

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

ORACLE sqlplus基本操作_数据库_77

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

ORACLE sqlplus基本操作_应用程序_78

所有员工SAL+100

ORACLE sqlplus基本操作_oracle_79

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; 为回退。