第2章SQLServer數(shù)據(jù)表管理及數(shù)據(jù)修改.ppt_第1頁
第2章SQLServer數(shù)據(jù)表管理及數(shù)據(jù)修改.ppt_第2頁
第2章SQLServer數(shù)據(jù)表管理及數(shù)據(jù)修改.ppt_第3頁
第2章SQLServer數(shù)據(jù)表管理及數(shù)據(jù)修改.ppt_第4頁
第2章SQLServer數(shù)據(jù)表管理及數(shù)據(jù)修改.ppt_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第2章,SQL Server 數(shù)據(jù)表管理 及數(shù)據(jù)修改,課程回顧,舉例說明什么是數(shù)據(jù)冗余? 數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件的擴(kuò)展名分別是什么? 舉例說明在哪些情況下需要分離和附加數(shù)據(jù)庫? 如何實(shí)現(xiàn)數(shù)據(jù)庫的備份和還原?,2,本章節(jié)授課目標(biāo),創(chuàng)建數(shù)據(jù)庫表 設(shè)置表的主鍵、外鍵和建立表之間的關(guān)系 為表增加約束 使用T-SQL向表中插入數(shù)據(jù) 使用T-SQL更新表中數(shù)據(jù) 使用T-SQL刪除表中數(shù)據(jù),3,再論數(shù)據(jù)完整性 2-1,數(shù)據(jù)完整性,+,=,準(zhǔn)確性,可靠性,4,再論數(shù)據(jù)完整性 2-2,數(shù)據(jù)存放在表中 “數(shù)據(jù)完整性的問題大多是由于設(shè)計(jì)引起的” 創(chuàng)建表的時(shí)候,就應(yīng)當(dāng)保證以后數(shù)據(jù)輸入是正確的 錯(cuò)誤的數(shù)據(jù)、不符合要

2、求的數(shù)據(jù)不允許輸入,創(chuàng)建表:保證數(shù)據(jù)的完整性 = 實(shí)施完整性約束,5,完整性包括2-1,輸入的類型是否正確? 年齡必須是數(shù)字 輸入的格式是否正確? 身份證號碼必須是18位 是否在允許的范圍內(nèi)? 性別只能是“男”或者“女” 是否存在重復(fù)輸入? 學(xué)員信息輸入了兩次 是否符合其他特定要求? 信譽(yù)值大于5的用戶才能夠加入會(huì)員列表 ,6,完整性包括2-2,7,實(shí)體完整性,約束方法:唯一約束、主鍵約束、標(biāo)識列,8,域完整性,約束方法:限制數(shù)據(jù)類型、檢查約束、外鍵約束、默認(rèn)值、非空約束,9,引用完整性,約束方法:外鍵約束,10,自定義完整性,約束方法:規(guī)則、存儲(chǔ)過程、觸發(fā)器,11,創(chuàng)建數(shù)據(jù)庫表2-1,12,

3、SQL Server的數(shù)據(jù)類型,13,創(chuàng)建數(shù)據(jù)庫表2-2,14,選擇主鍵的原則,最少性 盡量選擇單個(gè)鍵作為主鍵 穩(wěn)定性 盡量選擇數(shù)值更新少的列作為主鍵 表中沒有合適的列作為主鍵怎么辦? 為表添加標(biāo)識列,15,創(chuàng)建數(shù)據(jù)庫表-3,16,主外鍵關(guān)系2-1,演示建立主-外鍵關(guān)系,17,主外鍵關(guān)系2-2,演示建立數(shù)據(jù)庫關(guān)系圖,18,創(chuàng)建檢查約束,演示建立檢查約束,19,創(chuàng)建數(shù)據(jù)庫完畢!,輸入數(shù)據(jù)項(xiàng),驗(yàn)證主鍵、主外鍵關(guān)系、檢查約束,20,小結(jié),有問題嗎?,21,SQL和T-SQL,SQL(Structured Query Language)結(jié)構(gòu)化查詢語言 它是查詢和管理關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)中

4、的數(shù)據(jù)而專門設(shè)計(jì)的一種標(biāo)準(zhǔn)語言。 T-SQL = Transact-SQL T-SQL是SQL的加強(qiáng)版 對功能進(jìn)行了擴(kuò)充:如變量說明、流程控制、功能函數(shù),22,T-SQL的組成,DML(數(shù)據(jù)操作語言) 查詢、插入、刪除和修改數(shù)據(jù)庫中的數(shù)據(jù) SELECT、INSERT、 UPDATE 、DELETE等 DCL(數(shù)據(jù)控制語言) 用來控制存取許可、存取權(quán)限等 GRANT、REVOKE 等 DDL(數(shù)據(jù)定義語言) 用來建立數(shù)據(jù)庫、數(shù)據(jù)庫對象和定義其列 CREATE TABLE 、DROP TABLE 等 變量說明、流程控制、功能函數(shù) 定義變量、判斷、分支、循環(huán)結(jié)構(gòu)等 日期函數(shù)、數(shù)學(xué)函數(shù)、字符函數(shù)、系統(tǒng)

5、函數(shù)等,23,T-SQL中的運(yùn)算符,24,通配符,通常與LIKE關(guān)鍵字一起來使用 可以用在檢查約束中使用LIKE 在后面的查詢語句中還會(huì)經(jīng)常使用到,25,邏輯表達(dá)式,NOT (付款方式 = 信用卡) OR (信用卡 陽光卡) 這個(gè)表達(dá)式的含義是什么?,26,插入數(shù)據(jù)行 7-1,INSERT INTO 列名 VALUES ,INSERT INTO dbo.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status,RegDate,ActiveDate,ActiveCode,Remark) VALUES(zhuer,123234,0,1,2010-08-31,

6、2010-08-31,23424,普通會(huì)員);,INSERT INTO dbo.TBa_MemberInfo VALUES(zhuer,123234,0,1,2010-08-31,2010-08-31,23424,普通會(huì)員);,27,插入數(shù)據(jù)行 7-2,注意事項(xiàng)1: 每次插入一行數(shù)據(jù),不能只插入半行或者幾列數(shù)據(jù) 插入的數(shù)據(jù)是否有效將按照整行的完整性的要求來檢驗(yàn),INSERT INTO dbo.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status,RegDate,ActiveDate,ActiveCode,Remark) VALUES(zhuer,12

7、3234);,注意事項(xiàng)2: 每個(gè)數(shù)據(jù)值的數(shù)據(jù)類型、精度和小數(shù)位數(shù)必須與相應(yīng)的列匹配,INSERT INTO dbo.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status) VALUES(zhuer3,123234,0,未激活);,代碼錯(cuò)誤,代碼錯(cuò)誤,28,插入數(shù)據(jù)行 7-3,注意事項(xiàng)3: 不能為標(biāo)識列指定值,INSERT INTO dbo.TBa_MemberInfo(ID,UserName,Pwd,Email,Balance,Status) VALUES(140,zhuer3,123234,0,0);,代碼錯(cuò)誤,注意事項(xiàng)4: 如果在設(shè)計(jì)表的時(shí)候就指

8、定了某列不允許為空,則必須插入數(shù)據(jù),INSERT INTO dbo.TBa_MemberInfo(UserName,Email,Balance,Status) VALUES(140,zhuer3,0,0);,代碼錯(cuò)誤,29,插入數(shù)據(jù)行 7-4,注意事項(xiàng)5: 插入的數(shù)據(jù)項(xiàng),要求符合檢查約束的要求,INSERT INTO dbo.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status) VALUES(zhuer3,234,0,0);,代碼錯(cuò)誤,注意事項(xiàng)6: 具有缺省值的列,可以使用DEFAULT(缺?。╆P(guān)鍵字來代替插入的數(shù)值,INSERT INTO dbo

9、.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status) VALUES(zhuer3,234234,0,DEFAULT);,30,插入多行數(shù)據(jù) -1,INSERT INTO dbo.AA SELECT 11,11 UNION ALL SELECT 22,22 UNION ALL SELECT 33,33 UNION ALL SELECT 44,44;,INSERT INTO (列名) SELECT UNION SELECT UNION ,INSERT INTO dbo.AA(A1,A2) VALUES (11,11), (22,22);,31,插入多

10、行數(shù)據(jù) -1,SELECT UserName,Pwd,Balance INTO dbo. #T FROM dbo.TBa_MemberInfo;,SELECT (列名) INTO FROM ,該語句可以執(zhí)行兩次嗎?,#T為臨時(shí)表,32,插入多行數(shù)據(jù) -2,INSERT INTO dbo.#T SELECT UserName,Pwd,Balance FROM dbo.TBa_MemberInfo;,INSERT INTO (列名) SELECT FROM ,33,插入多行數(shù)據(jù) -3,SELECT IDENTITY(INT,1,1) AS ID,UserName,Pwd,Email,Balance

11、 INTO dbo.temp FROM dbo.TBa_MemberInfo;,SELECT INTO插入多行數(shù)據(jù)的時(shí)候,如何插入新的標(biāo)識列?,SELECT IDENTITY(數(shù)據(jù)類型,標(biāo)識種子,標(biāo)識增長量) AS 列名 INTO 新表 FROM 原始表,34,更新數(shù)據(jù)行,UPDATE SET WHERE ,UPDATE TBa_MemberInfo SET Balance=Balance+10;,UPDATE TBa_MemberInfo SET Balance=Balance+10 WHERE Status=1;,UPDATE TBa_MemberInfo SET Balance=Bala

12、nce+10,Remark=余額增10元 WHERE Status=1 AND Balance=0;,35,刪除數(shù)據(jù)行2-1,DELETE FROM WHERE ,DELETE FROM TBa_MemberInfo WHERE UserName=xyz123;,DELETE FROM TBa_MemberInfo WHERE UserName=zizhu1226;,注意事項(xiàng)1: DELETE命令以行為單位進(jìn)行刪除,DELETE關(guān)鍵字后不能包含字段信息,DELETE * FROM TBa_MemberInfo;,注意事項(xiàng)2: 表中數(shù)據(jù)被其它表引用時(shí),數(shù)據(jù)不能刪除,運(yùn)行錯(cuò)誤,運(yùn)行錯(cuò)誤,36,刪除

13、數(shù)據(jù)行2-2,=,功能類似,注意: 1.表結(jié)構(gòu)、列、約束等不被改動(dòng) 2.不能用于有外鍵約束的表 3.標(biāo)識列重新開始編號,TRUNCATE TABLE ,TRUNCATE TABLE TBa_MemberInfo;,DELETE FROM TBa_MemberInfo;,37,小結(jié),有問題嗎?,38,38,總結(jié),本章重點(diǎn)講解了: 使用SQL Server Management Studio管理數(shù)據(jù)庫表的基本操作:設(shè)置主鍵、創(chuàng)建關(guān)系、創(chuàng)建約束 使用INSERT語句完成數(shù)據(jù)插入 使用UPDATE語句完成數(shù)據(jù)修改 使用DELETE語句完成數(shù)據(jù)刪除,39,上機(jī)作業(yè),作業(yè) 練習(xí)使用SQL Server Management Studio創(chuàng)建數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論