本章,介绍如何利用UPDATE进一步操纵表数据。

更新数据

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

下面分别对它们进行介绍。

不要省略WHERE子句 在使用UDDATE时一定要注意细心。因为稍不注意,就会更新表中所有行。
UPDATE与安全 在客户机/服务器的DBMS中,可能需要特殊的安全权限。在你试图使用UPDATE前,应该保证自己有足够的权限。

基本的UPDATE语句由三部分组成,分别是:
要更新的表
列名和它们的新值
确定要更新哪些行的条件

举一个简单例子。客户1000000005现在有了电子邮件,因此它的记录需要更新,语句如下:
UPDATE Customers
SET cust_email = ‘kim@thetoystore.com’
WHERE cust_id = ‘1000000005’;

UPDATE语句总是以要更新的表的名字开始。在此例子中,要更新的表的名字为Customers。SET命令用来将新值赋给被更新的列。如这里所示,SET子句设置cust_eamil列为指定的值:
SET cust_email = ‘kim@thetoystore.com’

UPDATE语句以WHERE子句结束,它告诉DBMS更新哪一行。没有WHERE子句,DBMS将会用这个电子邮件更新Customers表中所有行,这并不是我们所希望的。

更新多个列的语法稍有不同:
UPDATE Customers
SET cust_contact = ‘Sam Roberts’,
cust_email = ‘sam@toyland.com’
WHERE cust_id = ‘1000000006’;

更新多个列时,只需要使用单个SET命令,每个‘列=值’对之间使用逗号分隔(最后一列之后不用逗号)。在此例子中,更新客户1000000006的cust_contact和cust_email 列。

在UPDATE语句中使用子查询 UPDATE语句中可以使用子查询,使得能用SELECT语句检索出的数据列更新列数据。
FROM关键字 有的SQL实现在UPDATE语句中支持使用FROM子句,它用来自一个表的数据更新另外一个表的行

为了删除某个列的值,可设置它为NULL(假定表定义允许NULL值)。如下进行:
UDATE Customers
SET cust_emain = NULL
WHERE cust_id = ‘1000000005’;
其中NULL用来去除cust_email列中的值。

SQL - 更新数据(UPDATE)相关推荐

  1. MySQL更新数据update

    在MySQL通过UPDATE语句更新数据表中的数据.在此,我们将就用六中的student学生表 1. UPDATE基本语法 UPDATE 表名 SET 字段名1=值1[,字段名2 =值2,-] [WH ...

  2. mysql更新数据 update格式和alter对比

    原来的mytable表如下: mysql> select * from mytable; +----+--------+------+--------------+---------+ | id ...

  3. centos写mysql光标移到上一行_mysql:一条SQL更新语句(update)是如何执行的

    一条更新语句的执行流程又是怎样的呢? 之前你可能经常听DBA同事说,MySQL可以恢复到半个月内任意一秒的状态,惊叹的同时,你是不是心中也会不免会好奇,这是怎样做到的呢? 我们还是从一个表的一条更新语 ...

  4. oracle 视图怎么更新数据,Update视图数据(oracle)

    一般说起视图第一反应就是无法对其中数据进行修改,如果视图只包含一张表,应该是可以update的,因为SQL会执行查询转换,将视图转成表.但是多数的视图都是多表关联,那如何对视图中的数据进行update ...

  5. 更新数据update

    语法: update 表名 set 字段名=值,字段名=值....; Update 表名 set 字段名=值,字段名=值.....where 条件; 注意: 1.列名的类型与修改的值要一致. 2.修改 ...

  6. oracle显示更新条数的函数,ORACLE学习笔记-添加更新数据函数篇

    一.添加数据 sql;"> /*添加数据*/ insert into STU values('stu0004','赵一',18,1,"kc0004"); inser ...

  7. 5.1.6 UPDATE更新数据

    5.1.6 UPDATE更新数据 UPDATE实现数据的更新操作 语法结构: UPDATE <dbtab> SET f1-fn (WHERE <condition>). UPD ...

  8. eclipse给mysql修改表数据_Eclipse中java向数据库中添加数据,更新数据,删除数据...

    ASP.NET网页动态添加.更新或删除数据行 看过此篇 http://www.cnblogs.com/insus/p/3247935.html的网友,也许明白Insus.NET是怎样实现动态添加数据行 ...

  9. SQL-根据多个条件更新数据

    根据多个条件更新数据 UPDATE sphwph SET BKXSHL=t2.BKXSHL FROM sphwph t1,sphwph_170420 t2 --(SELECT a.* FROM dbo ...

最新文章

  1. 斯人若彩虹,遇上方知有
  2. Spring框架bean的注解管理方法之一 使用注解生成对象
  3. 和渠道商成为真朋友,CDEC大会做对了什么?
  4. Last_Errno: 1755 Last_Error: Cannot execute the current event group in the parallel mode错误解决
  5. PyTorch | 通过torch.eye创建单位对角矩阵 | torch.eye()如何使用?torch.eye()例子 | torch.eye()使用方法
  6. Sharepoint学习笔记—习题系列--70-573习题解析 -(Q136-Q138)
  7. zblog修改上传服务器,【记录有用】ZBlog备份、恢复与搬家(换空间换服务器)方法...
  8. Dynamics CRM 2015Online Update1 new feature之 通过业务规则清空字段的值
  9. Windows游戏编程大师技巧第二版学习笔记之第一章
  10. Jquery Uploadify之Java获取动态传参参数
  11. php 解析p2p节目源,P2P加速解析与伪一次解析源码教程
  12. 你们要的简历模板来了
  13. 英中繁简编程术语对照
  14. windows设置路径Path
  15. 香槟分校计算机研究生专业,伊利诺伊大学香槟分校计算机专业排名好不好?
  16. Mybatis XML文件属性配置
  17. 如何制作unity艺术字体
  18. priya-dwivedi关于人脸情绪识别
  19. vs mysql 开发erp_ERP/MIS开发 Mindscape NHibernate + MySQL 快速开发入门
  20. 新星计划Day2【JavaSE】 枚举类与注解

热门文章

  1. 讯客分类信息网系统PHP正式版,一款【讯客分类信息系统】最新大气含手机版php源码...
  2. uni-app入门------便签APP的项目记录
  3. [002] ROS+罗技F710游戏手柄,实现小车遥控控制
  4. python3.7 安装pip3_Centos7 安装python3、pip3、ipython3
  5. css修改图片尺寸后图片变模糊的问题
  6. 索引全扫描与索引快速扫描的区别
  7. win10/win11+NVIDIA MX350笔记本自带显卡+CUDA10.2+Python3.6+Anaconda3从零开始配置深度学习环境
  8. 六个高效的任务管理app应用推荐
  9. python吊打Excel?屁!那是你不会用!
  10. 后门攻击与对抗样本攻击的比较研究