SQL更新现有数据

来源:互联网 发布:淘宝信用快速 编辑:程序博客网 时间:2024/05/22 16:58
利用 UPDATE 命令可以修改表里的现有数据。这个命令不向表里添加新记录,也不删除记录,它只是修改现有的数据。它一般每次只更新数据库里的一个表,但可以同时更新表里的多个字段。
一、更改记录操作
        语法:UPDATE  表名  SET  列名 = 新值
     [ WHERE 更新条件 ];
        叙述: WHERE 子句是判断语句,用来设定条件,限制只更新匹配的行。如果不带 WHERE 子句,则更新所有行数据。
        注意事项: 1. 使用该命令可以对符合 WHERE 条件的所有记录进行修改;
                   2. 需要指明表名和要改变的字段值,这个字段的值由 SET 引导,用来告诉 SQL 要改变哪个字段,以及要将其改为何值;
                   3. 如果不加条件,那么将会是针对于表中的所有记录的修改。
        例1:将 Students 表中的所有学生名称为 "Alex" 的改为 "Tom":
             UPDATE Students SET Sname="Tom" WHERE Sname="Alex";
        例2:更新数据行 Ssex:
             UPDATE Students SET Ssex = 0;
        注意到在这个例子里,所有记录的 Ssex 字段都被更新成0了。在使用没有 WHERE 子句的 UPDATE 语句时要特别小心,这时表里所有记录的相应字段都会被更新。大多数情况下,UPDATE 语句都需要使用 WHERE 子句 。
        例3:将 Sc 表中的所有 '刺绣系' 改为 '家政系' :
             UPDATE Sc
             SET Sdept ='家政系'
             WHERE Sdept = '刺绣系';
        例4: 将 Students 表中的所有95分及以下的成绩加5分:
              UPDATE Students
              SET Sgrade = Sgrade + 5
              WHERE Sgrade <= 95;
        例5:将 stu 表中所有 id 大于900的记录中 Score 的值加上5:
            UPDATE stu 
            SET score=score+5
            WHERE id>900
        例6:有 Store_Information 表:
             store_name  Sales  Date
             Los Angeles  $1500  Jan-05-1999
             San Diego  $250  Jan-07-1999
             Los Angeles  $300  Jan-08-1999 
             Boston   $700  Jan-08-1999 
      我们发现说 Los Angeles 在01/08/1999 的营业额实际上是$500,而不是表格中所储存的$300,因此我们用以下的 SQL 语句来修改那一笔记录:
      UPDATE  Store_Information
      SET  Sales = 500
      WHERE  store_name = "Los Angeles"
      AND  Date = "Jan-08-1999" 
      现在 Store_Information 表的内容变成:
      store_name  Sales  Date 
      Los Angeles  $1500  Jan-05-1999
      San Diego  $250  Jan-07-1999
      Los Angeles  $500  Jan-08-1999
      Boston   $700  Jan-08-1999 
      在这个例子中,只有一个记录符合 WHERE 子句中的条件。如果有多个记录符合条件的话,每一个符合条件的记录都会被修改的。
二、更改记录里的多个字段
        语法:UPDATE  表名 
         SET  列1 = 新值1,
              [ 列2 = 新值2 , ]
              [ 列3 = 新值3 , ] ......
       [ WHERE 更新条件 ];
        注意其中使用的 SET,这里只有一个 SET,但是有多个列,每个列之间以逗号分隔。SQL 通常使用逗号来分隔不同类型的参数。
        例: UPDATE Students
         SET Sname='何梅', Sgrade=91, Ssex=0
         WHERE Scode=5;
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 孩子计算题马虎大意怎么办 二年级孩子不认字怎么办 发现计算上的错误怎么办 孩子不好好做作业怎么办 手破了红肿了怎么办呢 老师反应孩子在校粗心胆小怎么办 四年级的学生计算粗心怎么办 老打孩子骂孩子怎么办 站久了脚肿了怎么办 孩子初中了书写越来越潦草怎么办 给孩子自由孩子无法无天怎么办 孩子挑食幼儿园老师该怎么办 老师说孩子挑食家长怎么办 工作中老是粗心不细心怎么办 小孩数学总是特别粗心该怎么办 孩子起范疙瘩的怎么办 做题马虎不认真怎么办 孩子考差了家长怎么办 小孩写作业不认真怎么办 小孩不认真检查作业怎么办 一年级的小孩作业不认真怎么办 一年级学生做题粗心怎么办 一年级的学生做题粗心怎么办 孩子做作业注意力不集中怎么办 小学三年孩子抄答案怎么办 孩子写作业不认真审题怎么办 一年级小孩审题不认真怎么办 孩子审题不认真马虎怎么办 孩子做作业不认真审题怎么办? 考老师考砸了怎么办 重要考试考砸了怎么办 二年级孩子做数学题粗心怎么办 二年级孩子考试粗心怎么办 二年级孩子考试总是粗心怎么办 二年级孩子总是粗心怎么办 小学一年级孩子抄别人作业怎么办 被老师发现抄答案怎么办 考试抄答案被老师发现怎么办 孩子撒谎不写作业怎么办 小学生做题容易马虎出错怎么办 小学生做题老是马虎怎么办