利用 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;