目录
一、DML语句介绍
M意为 Mainpulate(或Management),DML语句是表层级的语句,用于增删改查表中的内容,主要是对数据行进行操作
oracle对数据的安全性要求很比较高,所有数据的增删改必须commit提交,并且每行代码只能插入一行数据;mysql中支持同时插入多行数据,且不需要commit,因此mysql的数据安全性也相对较低
二、语法
增:INSERT
在进行 INSERT 前要建好表并指定好数据类型
INSERT INTO table_name (column_1, column_2,...) values (value_1, value_2,...);
value 的值要注意数据类型,字符型的数据加双引号,date 类型的数据需要使用 to_date() 函数进行处理
oracle中最常用的三种数据类型:number-数值型、varchar2()-字符型、date-日期
1、number(长度,精度):默认的范围为38
2、varchar2(长度):必须指定长度
3、date:无长度,只有2种固定的格式,分别为:
①YYYY/MM/DD:年/月/日(默认格式)
②YYYY/MM/DD hh24:mi:ss 年/月/日 时分秒,24表示时间,缺少显示为12
注意: Oracle中的日期不能直接使用,必须经过处理才可以。
删:DELETE
DELETE FROM TABLE_NAME WHERE CONDITION
没有 WHERE 条件时,将删除整个表。
删除数据时,如果有外键必须先删除外键的数据。
改:UPDATE
UPDATE TABLE_NAME SET COLUMN_1=VALUE_1,COLUMN_2=VALUE_2 WHERE CONDITION;
在没有 where 条件时,将修改整个列的数据
查:SELECT
SELECT 大有学问,是重中之重,不是这次想记下来的重点,所以略过
基本书写语法:
SELECT xx
FROM xx
WHERE xx
GROUP BY xx
HAVING xx
ORDER BY xx
SQL内部的执行顺序如下:(必须知道,这在实际应用中对于逻辑处理比较重要)
(1)from数据源(表);
(2)where指定条件进行筛选;
(3)group by子句分组;
(4)聚合函数进行计算;
(5)使用having子句筛选分组;
(6)计算所有的表达式(如函数);
(7)select 需要的字段;
(8)order by进行排序。