1. 程式人生 > 實用技巧 >SQL資料更新

SQL資料更新

插入操作

格式:

insert
into <表名> (<屬性列>...)
values (常量...)

insert語句的功能是將指定的元組插入到指定的關係中,其中屬性列的順序要與常量值一一對應,常量1的值賦給屬性列1,常量2的值賦給屬性列2,依次類推。

插入單條元組

  1. 插入一條學生資料。

    insert
    into Student(Sno,Sname,Ssex,Sdept,Sage)
    values('200215128','lee','男','CS','18')
    

插入多個元組

  1. 在Student表中查詢出所有01類圖書,將id=01插入到user1表中

    insert
    into user(id)
    select Sdept='CS'
    from Student
    where id='01'
    

    說明:SQL先處理子查詢,得到查詢結果,再將結果插入到所指的基本表中。

修改操作

格式:

update <表名>
set<列名>=<表示式>...
where <條件>

update語句的功能是修改指定關係中滿足where子句條件的元組,其中set子句給出指定列的修改方式及修改後的值。若省略where子句,則說明要修改關係中的所有元組,在where子句中可以巢狀子查詢。

修改一個元組的值

  1. 將學生表中學號為200215128的學生年齡加1.

    update Student
    set Sage = Sage+1
    where Sno='200215128'
    

修改多個元組的值

  1. 將學生表中所有學生年齡加1.

    update Student
    set Sage = Sage+1
    

帶子查詢的修改語句

  1. 將選課表中所有計算機系的學生成績提高5%

    update SC
    set Grade = Grade*1.05
    where Sno = (select Sno
                  from Student
                  where Sdept='CS')
    

刪除操作

格式

delete
from <表名>
where <條件>

delete語句的功能是刪除指定關係中滿足where子句條件的所有元組。當where語句省略時,表示要刪除關係中的全部元組,但表的定義仍存放在資料字典中。delete語句刪除的是關係中的資料,而不是表的定義。

刪除一個元組的值

  1. 將學號為200215128的學生從學生表中刪除

    delete
    from Student
    where Sno='200215128'
    

刪除多個元組的值

  1. 將學生表中所有學生刪除

    delete
    from Student
    

帶子查詢的刪除語句

  1. 將選課表中所有計算機系的學生刪除

    delete
    from SC
    where Sno(select Sno
             from Student
             where Sdept='CS')