當你需要進行下列操作時,dml語言被執行
—增加新的一行到表中
—修改表中已經存在的行
—從表中刪除已經存在的行
乙個事務是由一組邏輯單元的dml語句所組成
insert語句語法
使用insert語句增加新的行到表中
insert into table [(column [,column…])] values (value [,value…]);
該語法一次只插入一行到表中
插入新的一行,每列都包含值
按照表中列的預設順序列出數值
在insert子句中列出列是可選的
insert into departments(department_id,department_name,manager_id,location_id)
values (70,』public relations』,100,1700);
將日期和字元數值放入單引號中
隱式方法:從列列表中將這些列忽略
insert into departments (department_id,department_name) values(30,』purchsing』);
顯式方法:在values子句中指定null關鍵字
insert into departments values (100,』finance』,null,null);
sysdate函式記錄當前的日期和時間
insert into employees(employee_id,first_name,last_name,email,phone_number,
hire_date,job_id,salary,commission_pct,manager_id,department_id)
values(113,』louis』,』popp』,』lpopp』,』515.124.4567』,sysdate,』ac_account』,6900,null,
205,100);
增加乙個新雇員
insert into employees values (114,』den』,』raphealy』,』drapheal』,』515.127.4561』,
to_date(『feb 3,1999』,』mon dd,yyyy』),』ac_account』,11000,null,100,30);
從另外一張表拷貝行
在乙個子查詢中寫insert語句
insert into sales_reps(id,name,salary,commission_pct) select employee_id,
last_name,salary,commission_pct from employees where job_id like 『%rep%』;
不要使用values子句
insert子句中插入列的數量要和子查詢中的數量相匹配
update語句語法
使用updata語句修改已經存在的行
update table set column = value [,column = value,…] [where condition];
如果需要,一次更新可以多於一行
如果你指定了where子句,指定你要修改的行
update employees set department_id = 70 where employee_id = 113;
如果你忽略了where子句,表中所有的行都被修改
update employees set department_id = 70;
更新雇員114的工作和工資記錄,以匹配雇員205
update employees set job_id = ( select job_id from employees where employee_id =205),salary =(select salary from employees where employee_id =
205) where employee_id = 114;
在update語句中使用子查詢,基於另外一張表的值更新本表中的行
update copy_emp set department_id = (select department_id from employees
where employee_id = 100) where job_id = (select job_id from employees
where employee_id = 200);
delete語句語法
你可以使用delete語句從乙個表中刪除已經存在的行
delete [from] table [where condition];
where子句中指定的行被刪除
delete from departments where department_name = 『finance』;
如果你忽略了where子句,表中所有的行都會被刪除
delete from copy_emp;
在delete語句中使用子查詢,基於另外一張表的值刪除本表中的行
delete from employees where department_id = ( select department_id from
departments where department_name like 『%public%』);
在insert語句中使用子查詢
insert into (select employee_id,last_name,email,hire_date,job_id,salary,
department_id from employees where department_id =50) values (99999,
『taylor』,』dtaylor』,to_date(』07-jun-99』,』dd-mon-rr』),』st_clerk』,5000,50);
Oracle資料安全的維護
oracle資料安全的維護 記得某位哲學家說過 事物的變化離不開內因和外因。那麼對於 oracle資料安全這個話題而言,也勢必分為 內 和 外 兩個部分。那麼好,我們就先從 內 開始說起 1.從oracle系統本身說起 我們先拋開令人聞風色變的 hacker 和其他一些外部的原因,先想一下我們的資料...
oracle維護服務
廣州賽姆科技資訊 sam 是一家本地化的 it服務外包 提供商,是 oracle 甲骨文 公司推薦的第三方oracle資料庫服務提供商。幫助客戶優化 oracle 資料庫 作業系統 網路系統,提高應用系統執行效率,保證基礎資料安全和顧客財產。廣州賽姆科技立足於廣州,業務輻射整個華南地區,客戶範圍主要...
Oracle 索引維護
一 索引的分析 根據oracle文件所描述,如下情況要考慮重建索引 1.analyze index your index name validate structure 2.查詢索引碎片 select name,del lf rows,lf rows,round del lf rows lf row...