SQL必知必會 筆記 第十六章 更新和插入資料,sql必知

來源:互聯網
上載者:User

SQL必知必會 筆記 第十六章 更新和插入資料,sql必知
16.1更新資料

為了更新(修改)表中的資料,可使用UPDATE語句。可採用兩種方式使用UPDATE:
(1)更新表中特定的行
(2)更新標紅所有的行
不要省略WHERE子句:在使用UPDATE時一定要注意細心。因為稍不注意,就會更新表中所有行。
基本的UPDATE語句由3部分組成:
(1)要更新的表
(2)列名和它們的新值
(3)確定要更新哪些行的過濾條件
不要省略WHERE子句
更新單個列

UPDATE CustomersSET cust_email = 'kim@thetoystore.com'WHERE cust_id = '1000000005';

更新多個列

UPDATE CustomersSET cust_contact = 'Sam Roberts',     cust_email = 'sam@toyland.com'WHERE cust_id = '1000000006';

在UPDATE語句中使用子查詢:UPDATE語句中可以使用子查詢,使得能用SELECT語句檢索出的資料更新列資料。
為了刪除某個列的值,可設定它為NULL

UPDATE CustomersSET cust_email = NULLWHERE cust_id = '1000000005';
16.2刪除資料

為了從一個表中刪除資料,使用DELECT語句。可以用兩種方式使用DELETE:
(1)從表中刪除特定的行
(2)從表中刪除所有行
刪除一行

DELETE FROM CustomersWHERE cust_id = '1000000006';

DELETE不需要列名或萬用字元。DELETE刪除整行而不是刪除列。為了刪除指定的列,請使用UPDATE語句。
刪除表的內容而不是表:DELETE語句從表中刪除行,甚至是刪除表中所有行。但是,DELETE不刪除表本身。
更快的刪除:如果想從表中刪除所有行,不要使用DELETE,可使用TRUNCATE TABLE語句,他完成相同的工作,但速度更快(因為不記錄資料的變動)。

16.3更新和刪除的知道原則

使用UPDATE或DELETE是應遵循的習慣:
(1)除非確實打算更新和刪除每一行,否則絕對不要使用不帶WHERE子句的UPDATE或DELETE語句。
(2)保證每個表都有主鍵,儘可能像WHERE子句那樣使用它(可以指定各主鍵、多個值或值的範圍)。
(3)在對UPDATE或DELETE語句使用WHERE子句前,應該先用SELECT進行測試,保證它過濾的是正確的記錄,以防編寫的WHERE子句不正確。
(4)使用強制實施參考完整性的資料庫,這樣DBMS將不允許刪除具有與其他表相關聯的資料的行。
(5)有的DBMS允許資料庫管理員施加約束,以防止執行不帶WHERE子句的UPDATE或DELETE。
小心使用:SQL沒有撤銷(undo)按鈕,應該非常小心地使用UPDATE和DELETE,否則你會發現自己更新或刪除了錯誤的資料。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.