1 / 24

Ch7. 資料的新增、修改以及刪除 結構化查詢語言 SQL 介紹 使用 SSMSE 與 SQL 新增 / 刪除 / 修改資料 Ch8. 基本資料查詢 使用 SQL 作基本資料查詢

第三篇. 資料定義與操作. Ch7. 資料的新增、修改以及刪除 結構化查詢語言 SQL 介紹 使用 SSMSE 與 SQL 新增 / 刪除 / 修改資料 Ch8. 基本資料查詢 使用 SQL 作基本資料查詢 結合 (JOIN) 兩張以上資料表 Ch9. 系統函數與進階資料查詢 常用數學、時間、字串以及集總函數 使用視覺化工具查詢資料 Ch10. 資料索引的重要性與建立技巧 索引的類型 如何建立索引並監控索引的效能. 第七章. 資料的新增、修改 以及刪除. Chapter 7 Outline. 7-1 結構化查詢語言介紹

mendel
Download Presentation

Ch7. 資料的新增、修改以及刪除 結構化查詢語言 SQL 介紹 使用 SSMSE 與 SQL 新增 / 刪除 / 修改資料 Ch8. 基本資料查詢 使用 SQL 作基本資料查詢

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第三篇 資料定義與操作 • Ch7.資料的新增、修改以及刪除 • 結構化查詢語言SQL介紹 • 使用SSMSE與SQL新增/刪除/修改資料 • Ch8.基本資料查詢 • 使用SQL作基本資料查詢 • 結合(JOIN)兩張以上資料表 • Ch9.系統函數與進階資料查詢 • 常用數學、時間、字串以及集總函數 • 使用視覺化工具查詢資料 • Ch10.資料索引的重要性與建立技巧 • 索引的類型 • 如何建立索引並監控索引的效能

  2. 第七章 資料的新增、修改以及刪除

  3. Chapter 7 Outline • 7-1 結構化查詢語言介紹 • 7-2 使用SSMSE執行T-SQL • 7-3 使用SSMSE新增資料錄 • 7-4 使用T-SQL新增資料錄 • 7-5 使用SSMSE修改資料錄內容 • 7-6 使用T-SQL修改資料錄內容 • 7-7 使用SSMSE刪除資料錄 • 7-8 使用T-SQL刪除資料錄 • 7-9 本章總結

  4. 7-1 結構化查詢語言介紹 • 結構化查詢語言Structured Query Language /SQL)是關聯式資料模式的標準資料庫語言,亦稱為關聯式資料庫語言(Relational Database Language) 。 • 特點:易懂、易學、平易近人。 • 1986年ANSI為不同的SQL訂標準語法 • 1987年ISO將其納為國際標準 • 有SQL-89、SQL-92(SQL2)等標準 • 所有發展RDBMS的廠商都聲稱他們的SQL相容於SQL-92,但是為了提高產品的競爭力,也都會推出他們特別的SQL語法以加強使用的功能與便利性。

  5. 7-1 結構化查詢語言介紹(續) • SQL 的功能(Functions of SQL) • 資料定義(Data Definition) • 資料操作(Data Manipulation) • 資料控制(Data Control) SQL = DDL + DML + DCL • SQL與SQL Server 2005的關係 • 在SQL Server 2005中的SQL稱之為Transact-SQL(簡稱T-SQL)。當然,T-SQL也包含了資料定義、資料操作、以及資料控制等功能。

  6. 7-1 結構化查詢語言介紹(續) • Transact-SQL語法慣例 • 斜體字 :T-SQL語法提供使用者可輸入之參數。 • | (分隔號):加上括號或大括號來分隔語法項目,您只可以選擇其中一的個項目來使用。 • [ ] (方括號):選擇性的語法項目,但真正使用時不需輸入方括號。例如:[a|b]就是您可以使用a或b其中一項(也可以不選)。 • { } (大括號):必要的語法項目,但真正使用時不需輸入大括號。例如:{a|b}就是您必須挑選a或b其中一項(不能不選)。

  7. 2.選擇資料庫 7-2 使用SSMSE執行T-SQL 1.按[新增查詢]按鈕 4.按[執行]按鈕或<F5>鍵執行SQL敘述 3.撰寫SQL敘述 如果點選該資料庫滑鼠右鍵彈出式選單的[新增查詢]選項就不用步驟2選取資料庫了喔!

  8. 7-2 使用SSMSE執行T-SQL • 在SSMSE中除了可以自行撰寫SQL敘述之外,也可以從檔案讀取,就建立TeadeDB一樣 • 讀取指令檔時系統會要求輸入一組正確的登入帳號與密碼。由於目前還未建立其他的帳號,所以使用sa或是Administrator登入,但其預設的資料庫為master,因此必須注意選擇正確的資料庫,或依16-2更改登入的預設資料庫。

  9. 7-2 使用SSMSE執行T-SQL • 在SSMSE中點選主畫面的[工具][選項]就可以進入設定環境、文字編輯器…等功能畫面。

  10. 7-3使用SSMSE新增資料錄 • 使用SSMSE來新增資料非常簡單,就像在表格內填資料一樣,但是有一點要注意的就是具有FK的資料表如果無法參照到對應的值就會無法插入。 • 現在就以加入一筆訂單為例,客戶編號為1013的保華工業欲購買一台點陣式印表機與一台網路雷射印表機 • 首先請在SSMSE中開啟orders資料表

  11. 7-3使用SSMSE新增資料錄 直接輸入資料即可 移動資料輸入的指標

  12. 7-4 使用SQL新增資料錄 • 為何需要使用T-SQL來輸入資料? • 可供應用程式使用 • 可以使用批次或整批方式輸入資料(例如建立TradeDB資料庫、資料表以及內含的資料就是使用SQL敘述的方式) • 使用INSERT新增資料的簡易語法如下: INSERT  [INTO] table_name[ ( column_list ) ] { VALUES ( { DEFAULT | NULL | expression } [ ,...n ] ) | execute_statement }

  13. 7-4 使用SQL新增資料錄 • table_name:欲新增資料的資料表名稱 • DEFAULT:該欄位使用預設值 • NULL:該欄位使用NULL值 • Expression:指定該欄位的值,可以是常數、運算式或是變數等 • execute_statement:另一段可執行的SQL敘述

  14. 7-4 使用SQL新增資料錄 • 範例 7-3.1:請在產品資料表products中新增一筆資料,編號為120、供應商代碼為HHT、品名為‘新產品一’、價格為 280 • insert into products values(120,'HHT','新產品一',280) • 範例 7-3.2:請新增一筆資料到orders資料表中,訂單日期為‘2007/03/13’、客戶編號為1010。 • insert into orders values('2007/03/13',1010,NULL)

  15. 7-4 使用SQL新增資料錄 • 使用識別的欄位不用輸入資料,如果想要寫入特定資料時就必須 • 使用 SET IDENTITY_INSERT table_name ON; • 在寫SQL敘述時必須將資料表的欄位都寫出來 • 範例 7-3.3:請新增一筆資料到orders資料表中,order_num=200、訂單日期為‘2007/03/13’、客戶編號為1010。 SET IDENTITY_INSERT orders ON; --開啟orders之IDENTITY_INSERT insert into orders(order_num,cust_num,order_date) values(200,1010,'2007/03/13'); SET IDENTITY_INSERT orders OFF;--使用後關閉,繼續讓系統自動產生

  16. 7-4 使用SQL新增資料錄 • 範例 7-3.5:請將TradeDB中的orders資料全部抄寫到mydb的orders資料中。 • SET IDENTITY_INSERT [mydb].[dbo].[orders] ON insert into [mydb].[dbo].[orders](order_num,order_date,customerid) select order_num,order_date,cust_num from orders SET IDENTITY_INSERT [mydb].[dbo].[orders] ON; • 本範例就是執行一段SQL敘述作資料大量輸入的典型例子

  17. 7-5 使用SSMSE修改資料錄的內容 • 與新增資料使用方法類似,找到想要修改的資料後進行修改即可。 2.將輸入焦點移到欲修改的欄位,可按<Esc>鍵放棄修改。輸入焦點一旦離開該欄位就表示修改完成。 1.先找到欲修改的資料錄

  18. 7-6使用T-SQL修改資料錄的內容 • 使用SQL敘述修改資料內容是使用UPDATE,使用UPDATE也有一次可以更動很多筆資料的好處,其語法結構如下 : • UPDATE table_name SET column_name = { expression | DEFAULT | NULL } [ ,...n ] [FROM <table_source> ] [ WHERE <search_condition> ] • table_source:資料表來源 • search_condition:限制的條件,依照該限制條件來作更新

  19. 7-6使用T-SQL修改資料錄的內容 • 範例7-5.1:請將客戶1018的公司名稱改為「新公司一」、電話號碼改為’02-33333333’。 • update customers set cust_name = '新公司一', phone = '0233333333'where cust_num = 1018 • 範例7-5.2:修改內容除了固定的指定值之外,也可以是運算式,例如:將每一項產品的單價修訂為原單價的105% • update products set unit_price = unit_price * 1.05

  20. 7-6使用T-SQL修改資料錄的內容 • 範例7-5.3:由於在訂單編號118之後變更了產品價格,請使用UPDATE方式更新items內產品的價格。 • update items set unit_price =products.unit_price --將products中的價格指定給items from products --從products資料表讀取資料 where items.prod_num = products.prod_num and items.supp_code=products.supp_code and order_num>118 --這是products中的PK,這樣才能唯一確認產品

  21. 1.找到資料後點選滑鼠右鍵 7-7 使用SSMSE刪除資料錄 • 在SSMSE中找到資料錄後刪除即可 2.選擇[刪除]選項

  22. 7-8 使用T-SQL刪除資料錄 • SQL刪除資料錄是使用DELETE,也是可以一次刪除很多筆符合條件的資料錄,其語法如下: • DELETE[ FROM ] table_name [FROM <table_source> [ ,...n ] ] [ WHERE <search_condition> ] • 與UPDATE語法類似,也能以其他資料表為基礎來刪除資料。該語法可解讀為「由table_name資料表中刪除所有符合condition條件的資料錄

  23. 7-8 使用T-SQL刪除資料錄 • 範例7-7.1:請刪除[mydb].[dbo].[orders]中訂單編號為200的資料錄 • delete from [mydb].[dbo].[orders] where order_num = 200 • 範例7-7.2:請刪除[mydb].[dbo].[orders]資料表中所有的資料錄 • delete from [mydb].[dbo].[items]; • delete from [mydb].[dbo].[orders]; • Why?為何刪除orders要先刪除items?

  24. 7-9 本章總結 • 結構化查詢語言(Structured Query Language/SQL)是關聯式資料模式的標準資料庫語言,亦可稱為關聯式資料庫語言(Relational Database Language) • SQL基本上都會提供資料定義(Data Definition)、資料操作(Data Manipulation)以及資料控制(Data Control)的功能。 • 在SSMSE中可以輕鬆的新增、刪除以及修改資料錄,缺點就是尋找正確的資料較為困難,但是可以搭配使用SQL敘述來縮小資料的範圍。 • 使用INSERT、DELETE、UPDATE敘述可以在一資料表中作資料的新增、刪除以及修改。

More Related