1. 程式人生 > >Oracle入門之對表內容的dml操作

Oracle入門之對表內容的dml操作

數據 表的管理 back -- tex 宋體 位置 表達式 wsh

oracle表的管理--添加數據

使用insert語句向表中插入數據

插入數據基本語法:

insert into table[(column [,column...])] values(value [,value...]);

insert into 表名[(列名 [,列名2...])] values(值 [,值2...]);

註意事項:

1、插入的數據應與字段的數據類型相同。

2、數據的大小應在列的規定範圍內,例如:不能將一個長度為80的字符串加入到長度為40的列中。

3、在values中列出的數據位置必須與被加入的列的排列位置相對應。

4、字符和日期型數據應包含在單引號中。

5、插入空值,不指定或insert into table values(null);

6、給表的所有列添加數據時,可以不帶列名直接添加values值。

oracle表的管理--修改數據

使用update語句修改表中數據。

Update語句基本法:

update tablename set columnname=expr1 [,columnname2=expr2,...][where where_definition];

update 表名 set 列名=表達式 [,列名2=表達式2,...][where 條件];

註意事項:

1、update語法可以用新值更新原有表行中的各列;

2、set子句指示要修改哪些列和要給予哪些值;

3、where子句指定應更新哪些行。如沒有where子句,則更新所有的行。(特別小心)

students中的數據進行修改

將張三的性別改成女

SQL>update students set sex=‘女‘ where name=‘張三‘;

把張三的獎學金改為10

SQL>update students set fellowship=10 where name=‘張三‘;

把所有人的獎金都指高10%

SQL>update students set fellowship=fellowship*1.1;

students添加數據

SQL>insert into students (id,name,sex,brithday,fellowship,resume) values(1,‘張三‘,‘男‘,‘11

-11月-01‘,23.34,‘hello‘);

SQL>insert into students values(2,‘李四‘,‘男‘,‘11-11月-02‘,67.34,‘hello2‘);

SQL>insert into students values(3,‘王五‘,‘女‘,‘11-11月-03‘,671.34,‘hello3‘);

插入部分字段與插入空值,語法是一樣的。只是要註意,當字段設置可為空時,可以不用將字段列出。否則就需要將字段名和值添加進去。否則報錯,具體參見上述插入數據6點註意事項。

insert into table[(column [,column...])] values(value [,value...]);

oracle表的管理--刪除數據

基本語法:

delete from TABLENAME [where where_definition];

delete from 表名 [where 條件表達式];

註意事項:

1、如果不使用where子句,將刪除表中所有的數據。(特別註意)

2、delete語句不能刪除某一列的值(可使用update)。

3、使用delete語句僅刪除記錄,不刪除表本身。如要刪除表,使用drop table語句。

4、同insert和update一樣,從一個表中刪除記錄將引起其它表的參照完整性問題,在修改數據庫數據時,頭腦中應始終不要忘記這個潛在的問題。

刪除的幾種方法比較:

delete from 表名;

刪除所有記錄,表結構還在,寫日誌,可以恢復的,速度慢

drop table 表名;

刪除表的結構和數據

delete from student where xh=‘A001‘;

刪除一條記錄

truncate table 表名;

刪除表中的所有記錄,表結構還在,不寫日誌,無法找回刪除的記錄,速度快。

設置保存點

savepoint 保存點名稱;

回滾

rollback to 保存點名稱;

特別註意:設置保存點及回滾操作是配合delete語句使用,用來找回使用delete刪除的數據。而通過truncate刪除的表數據是無法通過此方法找回的。

建議

在使用delete刪除表數據前使用savepoint設置保存點,防止數據誤刪除。

Oracle入門之對表內容的dml操作