MySQL——更新和删除数据(十三)

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

一、更新数据

为了更新(修改)表中的数据,可使用UPDATE语句。可采用两种方式使用UPDATE:
(1)更新表中特定行。
(2)更新表中所有行。

UPDATE语句非常容易使用,基本的UPDATE语句由3部分组成,分别是:
(1)要更新的表;
(2)列名和它们的新值;
(3)确定要更新行的过滤条件。
例如,客户10005现在有了电子邮件地址,因此他的记录需要更新,语句如下:

UPDATE customers SET cust_email='[email protected]' WHERE cust_id=10005;

此语句的输出如下图所示:

MySQL——更新和删除数据(十三)_第1张图片

UPDATE语句以WHERE子句结束,它告诉MySQL更新哪一行。没有WHERE子句,MySQL将会用这个电子邮件地址更新customers表中所有行。

更新多个列:

UPDATE customers SET cust_name='The Fudds', cust_email='[email protected]' WHERE cust_id=10005;

此语句的输出如下图所示:

MySQL——更新和删除数据(十三)_第2张图片

为了删除某个列的值,可设置它为NULL(假如表定义允许NULL值),如下所示:

UPDATE customers SET cust_email=NULL WHERE cust_id=10005;

此语句的输出如下图所示:

MySQL——更新和删除数据(十三)_第3张图片

二、删除数据

为了从一个表中删除(去掉)数据,可使用DELETE语句。可采用两种方式使用DELETE:
(1)从表中删除特定行。
(2)从表中删除所有行。
下面的语句从customers表中删除一行:

DELETE FROM customers WHERE cust_id=10006;

此语句的输出如下图所示:

MySQL——更新和删除数据(十三)_第4张图片

三、更新和删除的指导原则

(1)除非确实打算更新和删除每一行,否则绝对不要使用不带WHERE子句的UPDATE或DELETE语句。
(2)保证每个表都有主键,尽可能像WHERE 子句那样使用它。
(3)在对UPDATE或DELETE语句使用WHERE子句前,应该先用SELECT进行测试,保证它过滤的是正确的记录,以防编写的WHERE子句不正确。
(4)使用强制实施引用完整性数据库,这样MySQL将不允许删除具有与其他表相关联的数据的行。

你可能感兴趣的:(MySQL——更新和删除数据(十三))