原創:oracle DML介紹與使用
DML(Data Manipulation Language)資料操縱語言,SQL的分類之一,此外還有DDL(Data Definition Language)資料定義語言和DCL(Data Control Language)資料控制語言。DML包括:INSERT、UPDATE、DELETE。注意,select語句屬於DQL(Data Query Language)。
DML(Data Manipulation Language – 資料操作語言) 可以在下列條件下執行:
• 向表中插入資料
• 修改現存資料
• 刪除現存資料
1、插入語句
使用 INSERT 語句向表中插入資料。
INSERT INTO table [(column [, column...])]
VALUES (value [, value...]);
使用這種語法一次只能向表中插入一條資料
//向users表中插入一條完整的記錄
SQL> insert into users(username,password,name,address,zip) values('rrmy','1234','紅軍','北京',100089);
備註:如果是字串加’’ 如果是數字可與加’’也可以不加===>一般不加
SQL> commit;
注意:oracle資料庫在DOS命令中執行插入,修改等操作時,必須手動完成提交。否則不會(正真)插入成功。
在插入完整的記錄是users()中的表對應的欄位可以省略不寫.但一定要與資料庫中表的結構對應才行。
//向users表中插入一條非完整的記錄
SQL> insert into users(username,password) values('mj','123');
//注意:在插入部分子段的時候,必須滿足的表的約束條件,否則會出現如下異常資訊。
insert into users(username,password) values('mj','123')
RA-01400: 無法將 NULL 插入 ("RED"."USERS"."NAME")
SQL> insert into users(username,password,name) values('mj','123','馬傑');
1 row inserted
SQL> commit; //必須手動提交
Commit complete
以上簡單總結如下:
為每一列新增一個新值。
按列的預設順序列出各個列的值。
在 INSERT 子句中隨意列出列名和他們的值。
字元和日期型資料應包含在單引號中。
補充知識點:
隱式方式: 在列名錶中省略該列的值
SQL> insert into users(username,password,name) values('mj','123','馬傑');
顯示方式: 在VALUES 子句中指定空值。
SQL> insert into users values('test','123','test',null,null);
常見面試題:
//備份一張表
SQL> create table usess as select * from users;
//清空表中的記錄
SQL> delete from usess;
//使用插入語句把users表中記錄插入到usess中
SQL> insert into usess(username,password,name,address,zip) select username,password,name,address,zip from users;
SQL> commit
注意:
不必書寫 VALUES 子句。
子查詢中的值列表應於 INSERT 子句中的列名對應
2、更新資料
採用update語法進行更新資料:
語法如下:
UPDATE table
SET column = value [, column = value, ...]
[WHERE condition];
備註:一次可以更新多條記錄
//更新資料:更新users表 重新設定了passwrod 條件是唯一(主鍵是唯一)的條件。
SQL> update users set password='redarmy' where username='redarmy';
SQL> commit
注意:當更新多個欄位時,可以採用逗號進行區分.舉例如下:
SQL> update users set password='redarmy' , name='陳紅軍' where username='rrmy';
SQL> commit
備註:如果省略WHERE子句,則表中的所有資料都將被更新
SQL> update users set password='redarmy' , name='陳紅軍';
6 rows updated
SQL> commit;
Commit complete
SQL> select * from users;
USERNAME PASSWORD NAME ADDRESS ZIP
-------------------- -------------------- -------------------- -------------------- -------
huxz redarmy 陳紅軍 北苑家園 100012
liucy redarmy 陳紅軍 清華園 100084
redarmy redarmy 陳紅軍 北京 100089
rrmy redarmy 陳紅軍 北京 100089
mj redarmy 陳紅軍
test redarmy 陳紅軍
6 rows selected
補充:在update語句中使用子查詢
//更新huxz的郵編與使用者liucy的郵編一致
SQL> update users set zip=(select zip from users where username='liucy') where username='huxz';
//備註:在更新資料的時候 where條件中也可以使用子查詢。
3、刪除資料
在表中如果某些資料不在需要就可以使用delete語句進行刪除,並釋放該資料所佔用的儲存空間刪除語法如下:
DELETE [FROM] table
[WHERE condition];
備註:delete語句只是從表中刪除資料,不會刪除表結構.刪除表結構採用drop語句。
注意:刪除表中的資料時,一定要考慮表的約束(否則會出現一些異常資訊)
//清空表 delete from 表名 ||delete 表名
//刪除資料 where條件與更新一致,必須保證唯一性(主鍵是唯一)條件
SQL> delete from users where username='test';
以上內容版權歸redarmy_chen所有,如有轉載請附帶出處,如有疑問請傳送郵件至redarmy_chen@qq.com
相關文章
- 原創:oracle聚合函式介紹Oracle函式
- 原創:oracle 子查詢介紹Oracle
- [原創]SOAPUI工具介紹UI
- [原創]WebScarab工具介紹Web
- [原創]zabbix工具介紹,安裝及使用
- [原創]SpotLight效能監控工具使用介紹
- [原創]Eclipse Memory Analyzer tool(MAT)工個使用介紹Eclipse
- 原創:springIOC介紹第二講Spring
- 原創:spring入門介紹第一講Spring
- 原創:ServletContext應用介紹總結ServletContext
- [原創]敏捷開發管理工具介紹敏捷
- [原創]Fitnesse測試工具介紹及安裝
- 原創圖書流程介紹:寫作階段
- 原創圖書流程介紹:選題階段
- 【原創】ORACLE 分割槽與索引Oracle索引
- IIS Express介紹與使用Express
- java ShutdownHook介紹與使用JavaHook
- Influxdb 介紹與使用UX
- JQuery的介紹與使用jQuery
- [原創]Java靜態程式碼檢查工具介紹Java
- [原創]網際網路金融App測試介紹APP
- 原創圖書流程介紹:編排校階段
- [原創]H5前端效能測試工具介紹H5前端
- oracle dml與索引index(一)Oracle索引Index
- GoogleTagManager 介紹與使用Go
- Android 動畫 介紹與使用Android動畫
- Shell指令碼介紹與使用指令碼
- FastAPI 的路由介紹與使用ASTAPI路由
- Redis - 介紹與使用場景Redis
- item的介紹與使用-2.0
- [原創]淺談H5頁面測試介紹H5
- [原創]介紹幾款小巧的Linux發行版Linux
- 【原創】開源Math.NET基礎數學類庫使用(01)綜合介紹
- Oracle預設使用者介紹Oracle
- Oracle 分析函式使用介紹(轉)Oracle函式
- 【原創】Oracle ASM發展與實踐OracleASM
- 【原創】Oracle RAC故障分析與處理Oracle
- ORACLE索引與高效能SQL介紹Oracle索引SQL