Oracle入门(十三)之SQL的DML
數據操縱語言(Data Manipulation Language, DML)是SQL語言中,負責對數據庫對象運行數據訪問工作的指令集,以INSERT、UPDATE、DELETE三種指令為核心,分別代表插入、更新與刪除,是開發以數據為中心的應用程序必定會使用到的指令,因此有很多開發人員都把加上SQL的SELECT語句的四大指令以“CRUD”來稱呼。
一、數據查詢 - Select
select語句完整的句法如下:
select 目標表的列名或列表達式序列
from 基本表名和(或)視圖序列
[ where 行條件表達式 ]
[ group by 列名序列
?[ having 組條件表達式 ] ]
[ order by 列名[ asc|desc ],… ]
select * from employees where to_char(hire_date,'yyyy-mm') =to_char(sysdate,'yyyy-mm');注:Oracle入門(十三)之Select
二、數據插入-Insert
功能:在表中插入一條新的數據語法:insert into tablename [(column [,column...])]? values(value1 [, value2...])
注意:
Column缺省默認為所有列、如果某列值為空,需設為null 例1:
insert into t_gtype values('T00001','日用百貨');
例2:
insert into t_gtype(gtname,gtid) values('兒童用品','T00002');
(1)使用函數
?insert into t_user?
values('000002','李宇',to_date('1989-10-25','yyyy-mm-dd') ,'m','佛山禪城區','0757-89999999');
注:字符串加單引號、字符串日期數據要轉換格式(2)使用表格定義的默認值
insert into t_main_procure(pmid,pdate,pstate,pmemo)??
values('P00000000001',default,'1','初始化系統數據');
(3)使用序列
insert into t_user(uiid,uname)
?values(user_seq.nextval,'系統管理員');
注:nextval 偽列用于從指定序列中提取連續的序列號。必須用序列名來限定nextval。在引用“序列名.nextval”時,會生成新的序列號,并將當前的序列號放置在currval 中。
注:Oracle入門(十二)之序列(G)
(3)使用select
可以使用INSERT INTO SELECT語句實現在insert語句
中使用子查詢
語法格式為:
insert into table2(field1,field2,...)?
select value1,value2,... from table1;
三、數據修改-Update
修改表中的數據語法:
?update tablename
?set column1 = value1 [, column2 = value2, ...]
?[where condition];
例子:
update employees set salary = salary + 100;(1)基于子查詢的修改update tablename
?set column1 = (select 子句)
?[where condition];
四、數據刪除 - Delete
刪除表中的數據語法:
?delete [from] table
?[where condition];
例子:刪除t_goods數據
delete from t_goods ;注:delete 只是將數據標記為unused,要清除大表數據存儲空間,用truncate
五、事務
commit:發出commit 語句后,當前事務處理結束,所有待定更改變為永久性更改。rollback:發出rollback 語句后,將放棄所有待定更改。
savepoint:在事務處理中創建標記,該標記將事務處理分成幾個較小的部分。
rollback to savepoint:允許用戶將當前事務處理回退到指定的保存點。
事務處理何時開始或結束事務處理從第一個DML(INSERT、UPDATE、DELETE 或MERGE)語句開始。
出現以下任一情況時事務處理結束:
- 發出了COMMIT 或ROLLBACK 語句
- 發出了DDL和DCL
- 用戶退出了iSQL*Plus 或SQL*Plus
總結
以上是生活随笔為你收集整理的Oracle入门(十三)之SQL的DML的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 努比亚红魔 150W 氮化镓桌面充电套装
- 下一篇: Oracle入门(十四)之PL/SQL