1. 程式人生 > >14、增刪改操作

14、增刪改操作

學習目標:

1、熟練掌握增刪改的語法

2、刪除和更新結合where語句的語法

學習過程:

作為應用程式的開發人員,對資料庫的最基本的操作就是增刪改查四個操作,昨天我們已經學習了基本的資料庫查詢,今天我們將會學習兩個增刪改操作和高階查詢。增刪改都會改變資料庫表的內容,而且資料一旦提交,就很難恢復,所以這些操作大家必須要謹慎,但是這些操作基本上也比較簡單,記住語法就可以了。

一、插入語句

增加資料就是往表插入資料,基本的語法格式是:

insert into 表名(列名1,列名2,列名3,...) values(值1,值21,值3,...);

該語法一次只插入一行到表中,按照表中列的順序對應的列出其數值,如果需要插入日期和字元數值,那麼要把數值放入單引號中,

當然表的列名可能不會全部列出,那麼該列就會預設設定為NULL值,當然你可以顯式定義然後把NULL賦給這個列。示例程式碼如下:

1

insert into department(DEP_ID,DEP_NAME) values(4,'財務部門');

從另外一張表拷貝行,不要使用VALUES子句,INSERT子句中插入列的數量要和子查詢中的數量相匹配如下面這個例子:

1

insert into department(DEP_ID,DEP_NAME) select em_id ,dep_name from dep2;

二、更新語句

使用UPDATA語句修改已經存在的行,基本的語法格式是:

update 表名 set 列名1=新值,列名1=新值,列名2=新值 [where condition]

凡是符合條件的都會更新,所以一次更新可以多於一行,如果沒有條件,那麼就表示更新所有的內容。

示例如下:

1

2

--把全部部門名稱改為行政部

update department set dep_name='行政部'

所以一般更新操作都會帶上where語句限定條件,如下面這個例子,只把dep_id為2的部門名稱修改了。

1

update department set dep_name='行政部'  where dep_id=2

三、刪除語句

你可以使用DELETE語句從一個表中刪除已經存在的行,基本的語法格式是:

delete from 表名  [where condition]

如果你忽略了WHERE子句,表中所有的行都會被刪除,也就等於清空表的資料了。如果你確定要清空表的內容,那麼你可以直接使用截斷表的語法。示例如下:

1

2

3

4

--清空表

delete from department

--截斷

truncate department

所以一般刪除操作都會帶上where語句限定條件,如下面這個例子,只把dep_id為2的部門名稱修改了。

1

delete from department where dep_name='新的部門名稱'

增刪改這些操作未必都能成功執行的,必須符合資料庫的約束條件才能正常提交。