




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第2章,SQL Server 數(shù)據(jù)表管理 及數(shù)據(jù)修改,課程回顧,舉例說明什么是數(shù)據(jù)冗余? 數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件的擴展名分別是什么? 舉例說明在哪些情況下需要分離和附加數(shù)據(jù)庫? 如何實現(xiàn)數(shù)據(jù)庫的備份和還原?,2,本章節(jié)授課目標,創(chuàng)建數(shù)據(jù)庫表 設置表的主鍵、外鍵和建立表之間的關系 為表增加約束 使用T-SQL向表中插入數(shù)據(jù) 使用T-SQL更新表中數(shù)據(jù) 使用T-SQL刪除表中數(shù)據(jù),3,再論數(shù)據(jù)完整性 2-1,數(shù)據(jù)完整性,+,=,準確性,可靠性,4,再論數(shù)據(jù)完整性 2-2,數(shù)據(jù)存放在表中 “數(shù)據(jù)完整性的問題大多是由于設計引起的” 創(chuàng)建表的時候,就應當保證以后數(shù)據(jù)輸入是正確的 錯誤的數(shù)據(jù)、不符合要
2、求的數(shù)據(jù)不允許輸入,創(chuàng)建表:保證數(shù)據(jù)的完整性 = 實施完整性約束,5,完整性包括2-1,輸入的類型是否正確? 年齡必須是數(shù)字 輸入的格式是否正確? 身份證號碼必須是18位 是否在允許的范圍內(nèi)? 性別只能是“男”或者“女” 是否存在重復輸入? 學員信息輸入了兩次 是否符合其他特定要求? 信譽值大于5的用戶才能夠加入會員列表 ,6,完整性包括2-2,7,實體完整性,約束方法:唯一約束、主鍵約束、標識列,8,域完整性,約束方法:限制數(shù)據(jù)類型、檢查約束、外鍵約束、默認值、非空約束,9,引用完整性,約束方法:外鍵約束,10,自定義完整性,約束方法:規(guī)則、存儲過程、觸發(fā)器,11,創(chuàng)建數(shù)據(jù)庫表2-1,12,
3、SQL Server的數(shù)據(jù)類型,13,創(chuàng)建數(shù)據(jù)庫表2-2,14,選擇主鍵的原則,最少性 盡量選擇單個鍵作為主鍵 穩(wěn)定性 盡量選擇數(shù)值更新少的列作為主鍵 表中沒有合適的列作為主鍵怎么辦? 為表添加標識列,15,創(chuàng)建數(shù)據(jù)庫表-3,16,主外鍵關系2-1,演示建立主-外鍵關系,17,主外鍵關系2-2,演示建立數(shù)據(jù)庫關系圖,18,創(chuàng)建檢查約束,演示建立檢查約束,19,創(chuàng)建數(shù)據(jù)庫完畢!,輸入數(shù)據(jù)項,驗證主鍵、主外鍵關系、檢查約束,20,小結,有問題嗎?,21,SQL和T-SQL,SQL(Structured Query Language)結構化查詢語言 它是查詢和管理關系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)中
4、的數(shù)據(jù)而專門設計的一種標準語言。 T-SQL = Transact-SQL T-SQL是SQL的加強版 對功能進行了擴充:如變量說明、流程控制、功能函數(shù),22,T-SQL的組成,DML(數(shù)據(jù)操作語言) 查詢、插入、刪除和修改數(shù)據(jù)庫中的數(shù)據(jù) SELECT、INSERT、 UPDATE 、DELETE等 DCL(數(shù)據(jù)控制語言) 用來控制存取許可、存取權限等 GRANT、REVOKE 等 DDL(數(shù)據(jù)定義語言) 用來建立數(shù)據(jù)庫、數(shù)據(jù)庫對象和定義其列 CREATE TABLE 、DROP TABLE 等 變量說明、流程控制、功能函數(shù) 定義變量、判斷、分支、循環(huán)結構等 日期函數(shù)、數(shù)學函數(shù)、字符函數(shù)、系統(tǒng)
5、函數(shù)等,23,T-SQL中的運算符,24,通配符,通常與LIKE關鍵字一起來使用 可以用在檢查約束中使用LIKE 在后面的查詢語句中還會經(jīng)常使用到,25,邏輯表達式,NOT (付款方式 = 信用卡) OR (信用卡 陽光卡) 這個表達式的含義是什么?,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,普通會員);,INSERT INTO dbo.TBa_MemberInfo VALUES(zhuer,123234,0,1,2010-08-31,2010-08-31,23424,普通會員);,27,插入數(shù)據(jù)行 7-2,注意事項1: 每次插入一行數(shù)據(jù),不能只插入半行或者幾列數(shù)據(jù) 插入的數(shù)據(jù)是否有效將按照整行的完整性的要求來檢驗,INSERT INTO dbo.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status,RegDate,ActiveDate,ActiveCode,Remark) VALUES(zhuer,12
7、3234);,注意事項2: 每個數(shù)據(jù)值的數(shù)據(jù)類型、精度和小數(shù)位數(shù)必須與相應的列匹配,INSERT INTO dbo.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status) VALUES(zhuer3,123234,0,未激活);,代碼錯誤,代碼錯誤,28,插入數(shù)據(jù)行 7-3,注意事項3: 不能為標識列指定值,INSERT INTO dbo.TBa_MemberInfo(ID,UserName,Pwd,Email,Balance,Status) VALUES(140,zhuer3,123234,0,0);,代碼錯誤,注意事項4: 如果在設計表的時候就指
8、定了某列不允許為空,則必須插入數(shù)據(jù),INSERT INTO dbo.TBa_MemberInfo(UserName,Email,Balance,Status) VALUES(140,zhuer3,0,0);,代碼錯誤,29,插入數(shù)據(jù)行 7-4,注意事項5: 插入的數(shù)據(jù)項,要求符合檢查約束的要求,INSERT INTO dbo.TBa_MemberInfo(UserName,Pwd,Email,Balance,Status) VALUES(zhuer3,234,0,0);,代碼錯誤,注意事項6: 具有缺省值的列,可以使用DEFAULT(缺?。╆P鍵字來代替插入的數(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為臨時表,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ù)的時候,如何插入新的標識列?,SELECT IDENTITY(數(shù)據(jù)類型,標識種子,標識增長量) 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;,注意事項1: DELETE命令以行為單位進行刪除,DELETE關鍵字后不能包含字段信息,DELETE * FROM TBa_MemberInfo;,注意事項2: 表中數(shù)據(jù)被其它表引用時,數(shù)據(jù)不能刪除,運行錯誤,運行錯誤,36,刪除
13、數(shù)據(jù)行2-2,=,功能類似,注意: 1.表結構、列、約束等不被改動 2.不能用于有外鍵約束的表 3.標識列重新開始編號,TRUNCATE TABLE ,TRUNCATE TABLE TBa_MemberInfo;,DELETE FROM TBa_MemberInfo;,37,小結,有問題嗎?,38,38,總結,本章重點講解了: 使用SQL Server Management Studio管理數(shù)據(jù)庫表的基本操作:設置主鍵、創(chuàng)建關系、創(chuàng)建約束 使用INSERT語句完成數(shù)據(jù)插入 使用UPDATE語句完成數(shù)據(jù)修改 使用DELETE語句完成數(shù)據(jù)刪除,39,上機作業(yè),作業(yè) 練習使用SQL Server Management Studio創(chuàng)建數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 專利侵權檢索合同標準文本
- 公司合同樣本易懂
- 二零二五簡單贈與合同范例
- 二零二五版股東退股協(xié)議書模板
- 商鋪分租合同范例二零二五年
- 保暖內(nèi)衣經(jīng)銷合同樣本
- 合伙人退出協(xié)議二零二五年
- 人工挖孔樁勞務分包合同
- 二零二五版股份股權轉(zhuǎn)讓協(xié)議
- 中國果品購銷合同范例
- 高考語文小說專題閱讀(9)2019年新高考I卷《理水》原文+真題+答案+解析
- 放射科腹部X線攝影技術操作規(guī)范
- 江蘇省蘇州市蘇州地區(qū)校2024屆中考一模數(shù)學試題含解析
- 2022年雄安新區(qū)容城縣事業(yè)單位招聘考試真題
- 2021年12月英語四級真題試卷第1套(含答案解析)
- 行政事業(yè)單位內(nèi)部控制規(guī)范講解課件
- 《中國特色社會主義理論體系概論》教學大綱
- 醫(yī)院一站式服務中心建設實施方案
- 病院機電工程施工組織設計方案
- 個人工作經(jīng)歷介紹PPT
- 注塑成型參數(shù)條件表
評論
0/150
提交評論