DML DML(Data Manipulation Language) 数据操纵语言 DML 利用 INSERT、SELECT、UPDATE 及 DELETE 等语句来操作数据库对象所包含的数据。
INSERT 语句
INSERT 语句用来在数据表或视图中插入一行数据。例如,如果要在Customer_Data 数据表中新增一个客户,可使用类似以下的 INSERT 语句:
INSERT INTO Customer_Data
(customer_id, first_name, last_name, phone)
VALUES (777, 'Frankie', 'Stein', '4895873900')
请注意 SQL 语句中第二行的数据列名称列表,列表上数据行名称的次序决定了数据数值将被放在哪个数据列。举例来说,第一个数据数值将被放在列表列出的第一个数据列customer_id、第二个数据数值放在第二个数据列 ,依此类推。由于我们在建立数据表时,定义数据行填入数值的次序与现在相同,因此我们不必特意指定列名称。我们可以用以下的 INSERT 语句代替:
INSERT INTO Customer_Data
VALUES (777, 'Frankie', 'Stein', '4895873900')
注意
如果使用这种形式的 INSERT 语句,但被插入的数值次序上与建立数据表不同时,数值将被放入错误的数据列。如果数据的类型与定义不符,则会收到一个错误讯息。
UPDATE 语句
UPDATE 语句用来更新或修改一行或多行中的值。例如,一位名称为 Frankie Stein 的客户想要在记录中改变他的姓氏为 Franklin,可使用以下 UPDATE 陈述式:
UPDATE Customer_Data
SET first_name = ‘Franklin’
WHERE last_name = ‘Stein’ and customer_id= 777
我们在 WHERE 子句中加入 customer_id 的项目来确定其他名称不为 Stein 的客户不会被影响----只有customer_id为777的客户,姓氏会有所改变。
--------------------------------------------------------------------------------
说明
当您使用 UPDATE 语句时,要确定在 WHERE 子句提供充分的筛选条件,如此才不会不经意地改变了一些不该改变的数据。
--------------------------------------------------------------------------------
DELETE 语句
DELETE 语句用来删除数据表中一行或多行的数据,您也可以删除资料表中的所有数据行。要从 Customer_Data 数据表中删除所有的行,您可以利用下列语句:
DELETE FROM Customer_Data
或
DELETE Customer_Data
数据表名称前的 FROM 关键字在 DELETE 语句中是选择性的。除此之外,这两个语句完全相同。
要从 Customer_Data 数据表中删除 customer_id 数据行的值小于100的行,可利用下语句:
DELETE FROM Customer_Data
WHERE customer_id < 100
现在我们已经快速浏览了 SQL 提供的 DDL 与 DML 语句,接著,下面将介绍 DCL。