




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
創(chuàng)建和管理數(shù)據(jù)表項目三學(xué)習(xí)目標完成本項目后,將能夠:?掌握使用SQLServerManagementStudio(SSMS)創(chuàng)建、修改和刪除表?掌握使用SQLServerManagementStudio(SSMS)創(chuàng)建約束?掌握創(chuàng)建、修改和刪除表的SQL語句?掌握添加約束的SQL語句?了解基本數(shù)據(jù)類型知識重點?對數(shù)據(jù)表的創(chuàng)建、修改和刪除操作?對數(shù)據(jù)表的數(shù)據(jù)約束操作知識難點?表的數(shù)據(jù)約束學(xué)習(xí)任務(wù)一使用SSMS工具建立數(shù)據(jù)表及約束任務(wù)描述在“對象資源管理器”中展開“數(shù)據(jù)庫”|xjglxt節(jié)點,根據(jù)任務(wù)需求利用SQLServerManagementStudio工具創(chuàng)建數(shù)據(jù)表對象及約束。任務(wù)目標(1)能夠利用SQLServerManagementStudio工具創(chuàng)建數(shù)據(jù)表。(2)能夠利用SQLServerManagementStudio工具添加約束。(3)會正確進行數(shù)據(jù)表命名。(4)能夠熟練進行數(shù)據(jù)表刪除、添加修改列、更改列順序、設(shè)置主鍵、創(chuàng)建外鍵關(guān)系等操作。(5)會創(chuàng)建數(shù)據(jù)庫關(guān)系圖。(6)理解“沒有規(guī)矩不成方圓”的內(nèi)涵,樹立遵紀守法、從我做起的意識。任務(wù)分析要使用SQLServerManagementStudio工具創(chuàng)建數(shù)據(jù)表,用戶首先利用該工具連接到SQLServer實例,然后在對象資源管理器中展開xjglxt數(shù)據(jù)庫下的表節(jié)點,創(chuàng)建數(shù)據(jù)表及約束。學(xué)習(xí)任務(wù)一用SQLServerManagementStudio工具創(chuàng)建數(shù)據(jù)庫任務(wù)實施按要求創(chuàng)建表3-1、表3-2和表3-3所示的3個數(shù)據(jù)表學(xué)習(xí)任務(wù)一用SQLServerManagementStudio工具創(chuàng)建數(shù)據(jù)庫學(xué)習(xí)任務(wù)一用SQLServerManagementStudio工具創(chuàng)建數(shù)據(jù)庫任務(wù)實施(1)在SQLServerManagementStudio對象資源管理器窗口中,右擊xjglxt數(shù)據(jù)庫下的“表”節(jié)點,然后在選擇“新建”|“表…”菜單項。(2)在彈出的新建表視圖中,按照要求輸入xsxxb表需要的“列名”,選擇“數(shù)據(jù)類型”,設(shè)置“允許空”。(3)按要求設(shè)置約束。(4)保存數(shù)據(jù)表。(5)在對象資源管理器中xjglxt數(shù)據(jù)庫下的表節(jié)點中查找新建的數(shù)據(jù)表。(6)創(chuàng)建表3-2(kcxxb)和表3-3(cjb)。(7)為cjb表設(shè)置約束。(8)分別命名并保存kcxxb表和cjb表。(9)建立xsxxb表、kcxxb表和cjb表之間的關(guān)系。(10)創(chuàng)建并查看數(shù)據(jù)庫關(guān)系圖。學(xué)習(xí)任務(wù)二使用T-SQL語句創(chuàng)建數(shù)據(jù)表和約束
任務(wù)描述啟動SQLServerManagementStudio,在工具欄中單擊【新建查詢】按鈕,在查詢編輯器中輸入命令創(chuàng)建數(shù)據(jù)表對象及約束。任務(wù)目標(1)能夠利用T-SQL語句創(chuàng)建數(shù)據(jù)表。(2)能夠利用T-SQL語句添加約束。(3)會利用T-SQL語句修改表的結(jié)構(gòu)。(4)理解約束的意義,自覺遵守國家法律和道德規(guī)范,具有社會責任感和擔當精神。任務(wù)分析打開查詢編輯器窗口,編寫T-SQL語句完成相應(yīng)任務(wù)。學(xué)習(xí)任務(wù)二使用T-SQL語句創(chuàng)建數(shù)據(jù)表和約束任務(wù)實施一、創(chuàng)建學(xué)生信息表students(1)在標準菜單欄上,單擊“新建查詢”按鈕,在右邊的查詢分析器窗口中輸入下列內(nèi)容:(2)單擊工具欄上的“執(zhí)行”按鈕或者按F5鍵,就在xjglxt數(shù)據(jù)庫中創(chuàng)建了students表,在對象資源管理器中驗證。學(xué)習(xí)任務(wù)二使用T-SQL語句創(chuàng)建數(shù)據(jù)表和約束二、使用T-SQL語句創(chuàng)建約束需求:為students表的sID字段添加主鍵約束,約束名取名為PK_sID;添加sIDentity字段并設(shè)置為唯一約束,約束名取名為UQ_sIDentity;sAddress字段添加默認約束,約束名取名為DF_sAddress。(1)在查詢編輯器窗口中,輸入以下代碼:(2)單擊工具欄上的“執(zhí)行”按鈕或者按F5鍵,運行。學(xué)習(xí)任務(wù)二使用T-SQL語句創(chuàng)建數(shù)據(jù)表和約束三、刪除students表中地址默認約束(1)在查詢編輯器窗口中,輸入以下代碼:USExjglxt--將當前數(shù)據(jù)庫設(shè)置為xjglxtGOALTERTABLEstudentsDROPCONSTRAINTDF_sAddress(2)單擊工具欄上的“執(zhí)行”按鈕或者按F5鍵,成功刪除students表中地址默認約束。學(xué)習(xí)任務(wù)三表的維護
任務(wù)描述實際上,建好數(shù)據(jù)表以后,隨著業(yè)務(wù)的需要,有時候可能對已經(jīng)創(chuàng)建的表進行修改和維護。表的維護主要包括主鍵、外鍵、約束、添加字段描述等,以及增加列、修改列、刪除列和刪除數(shù)據(jù)表等,用戶可以使用SQLServerManagementStudio和T-SQL語句兩種方法來實現(xiàn)表的維護。任務(wù)目標(1)能夠通過SQLServerManagementStudio和T-SQL語句增加、刪除、修改列。(2)能夠通過SQLServerManagementStudio和T-SQL語句刪除表。(3)結(jié)合國際國內(nèi)形勢,切實做到“兩個維護”,做一個對國家民族偉大復(fù)興有貢獻的熱血青年。任務(wù)分析通過SQLServerManagementStudio工具進行表的維護,打開查詢編輯器窗口輸入T-SQL語句,編寫T-SQL語句完成相應(yīng)任務(wù)。學(xué)習(xí)任務(wù)三表的維護
任務(wù)實施一、使用表設(shè)計器向表中添加新列(1)展開xjglxt數(shù)據(jù)庫,右擊xsxxb表,從彈出的快捷菜單中選擇“設(shè)計(G)”命令,此時將打開表設(shè)計器,并將光標置于“列名”列的最后一個行中。也可以右擊表中的行,再從快捷菜單中選擇“插入列(M)”命令,此時,將插入一個空白列行。(2)在“列名”列的單元格中輸入列名qq,數(shù)據(jù)類型為varchar(20),允許為空。(3)單擊工具欄的“保存”按鈕,列被增加。(4)打開xsxxb表,查看增加的結(jié)果。學(xué)習(xí)任務(wù)三表的維護
二、使用T-SQL語句添加列(1)在查詢編輯器窗口中,輸入以下代碼:USExjglxt--將當前數(shù)據(jù)庫設(shè)置為xjglxtGOALTERTABLEstudentsADDsqqvarchar(20)(2)單擊工具欄上的“執(zhí)行”按鈕或者按F5鍵,向students表添加一列“sqq”。三、使用表設(shè)計器修改表中列(1)展開xjglxt數(shù)據(jù)庫,右擊students表,從彈出的快捷菜單中單擊“設(shè)計(G)”命令。(2)選中列sSex,把數(shù)據(jù)類型由bit改為nchar(4)。(3)單擊“保存”按鈕,sSex列被修改。(4)打開students表,查看修改的結(jié)果。學(xué)習(xí)任務(wù)三表的維護
四、使用T-SQL語句修改列(1)在查詢編輯器窗口中,輸入以下代碼:USExjglxt--將當前數(shù)據(jù)庫設(shè)置為xjglxtGOALTERTABLEstudentsALTERCOLUMNsSexnchar(4)(2)單擊工具欄上的“執(zhí)行”按鈕或者按F5鍵,把students中sSex”列字段類型被修改為nchar(4)。五、使用表設(shè)計器刪除表中列(1)展開xjglxt數(shù)據(jù)庫,右擊xsxxb表,從彈出的快捷菜單中選擇“設(shè)計(G)”命令。(2)選擇qq列。(3)右擊該列,然后從快捷菜單中選擇“刪除列(N)”命令。(4)系統(tǒng)提示確認刪除所選列及其關(guān)系。選擇“是”,完成刪除列操作。(5)打開xsxxb表,查看修改的結(jié)果。學(xué)習(xí)任務(wù)三表的維護
六、使用T-SQL語句刪除列(1)在查詢編輯器窗口中,輸入以下代碼:USExjglxt--將當前數(shù)據(jù)庫設(shè)置為xjglxtGOALTERTABLEstudentsDROPCOLUMNsIDentity(2)單擊工具欄上的“執(zhí)行”按鈕或者按F5鍵,students中“sIDentity”列被刪除。七、使用SQLServerManagementStudio工具刪除表(1)展開xjglxt數(shù)據(jù)庫,右擊students表,從彈出的快捷菜單中選擇“刪除(D)命令”。(2)在“刪除對象”對話框中,確認刪除的表,單擊“確定”按鈕。(3)查看結(jié)果,students表已被刪除。學(xué)習(xí)任務(wù)三表的維護
八、使用T-SQL語句刪除數(shù)據(jù)表(1)在查詢編輯器窗口中,輸入以下代碼:USExjglxtGODROPTABLEstudents(2)單擊工具欄上的“執(zhí)行”按鈕或者按F5鍵,students表被刪除。知識鏈接一、表的概念表是數(shù)據(jù)庫中一個非常重要的對象,是包含數(shù)據(jù)庫中所有數(shù)據(jù)的數(shù)據(jù)庫對象,表是其他對象的基礎(chǔ)。如果沒有數(shù)據(jù)表,則關(guān)鍵字、主鍵、索引等也就無從談起。表定義是一個列集合,數(shù)據(jù)在表中的組織方式與在電子表格中相似,都是按行和列的格式組織的,是用來存儲數(shù)據(jù)和操作數(shù)據(jù)的邏輯結(jié)構(gòu)。表是由行和列組成的,其中每一行也稱為記錄,是組織數(shù)據(jù)的單位;而列也稱為字段,每一列代表記錄中的一個字段,在同一個表中列的名字不能相同。例如,在包含公司雇員數(shù)據(jù)的表中,每一行代表一名雇員,各列分別代表該雇員的信息,如雇員編號、姓名、地址、職位以及家庭電話號碼等。知識鏈接二、數(shù)據(jù)類型知識鏈接知識鏈接知識鏈接三、數(shù)據(jù)完整性
為了實現(xiàn)數(shù)據(jù)的完整性,數(shù)據(jù)庫需要做兩方面的工作:檢驗每行數(shù)據(jù)是否符合要求檢驗每列數(shù)據(jù)是否符合要求為實現(xiàn)以上兩種要求,SQLServer提供了以下4種類型的約束(Constraint)。1.實體完整性約束實體完整性約束要求表中的每一行數(shù)據(jù)都反映不同的實體,不能存在相同的數(shù)據(jù)行。2.域完整性約束域完整性約束是指給定列的輸入有效性。知識鏈接3.引用完整性約束在刪除和輸入數(shù)據(jù)行時,引用完整性約束用來保持表之間已經(jīng)定義的關(guān)系。例如:知識鏈接在強制引用完整性時,SQLServer禁止用戶進行下列操作:當主表中沒有關(guān)聯(lián)的記錄時,將記錄添加到相關(guān)表中時。也就是說學(xué)生成績表中不能添加學(xué)生信息表中沒有的學(xué)號。更改主表中的值并導(dǎo)致相關(guān)表中的記錄孤立。如果學(xué)生信息表中的學(xué)號改變了,學(xué)生成績表中的學(xué)號也應(yīng)該隨之改變。從主表中刪除記錄,但仍存在與該記錄相匹配的相關(guān)記錄。把學(xué)生信息表中數(shù)據(jù)刪除,則該學(xué)生學(xué)號不能出現(xiàn)在學(xué)生成績表中。引用完整性通過主鍵和外鍵之間的引用關(guān)系來實現(xiàn)。4.自定義完整性約束用戶自定義完整性用來定義特定的規(guī)則,實例,在向用戶信息表中插入一個用戶記錄時,要求通過身份證編碼來檢查另外一個數(shù)據(jù)庫中是否存在該用戶,并且該用戶的信譽度是否滿足要求等。如果不滿足要求就不能插入該記錄,這個時候就需要用到數(shù)據(jù)庫的規(guī)則、存儲過程或觸發(fā)器等數(shù)據(jù)庫對象來進行約束。知識鏈接四、主鍵和外鍵1.主鍵表中一列或者幾列組合的值能用來唯一標識表中的每一行,這樣的列或者列組合叫作表的主鍵。
有時候,在同一張表中,有多個列可以用來當作主鍵。在選擇那一列作為主鍵時,需要考慮以下兩個原則:最少性:是指列數(shù)最少的鍵,如果可以從單個主鍵和組合主鍵中選擇時,應(yīng)該選擇單個主鍵。這是因為操作一列比操作多列要快。當然該規(guī)則也有例外,如兩個整型列的組合比一個很大的字符類型的列要快。穩(wěn)定性:是指列中數(shù)據(jù)的特征,由于主鍵通常是用來在兩個表之間建立聯(lián)系,所以主鍵的數(shù)據(jù)不要經(jīng)常更新,理想情況下,應(yīng)該永遠不變。知識鏈接2.外鍵一般情況下,學(xué)生的信息和學(xué)生的成績是存放在不同的數(shù)據(jù)表中的,在學(xué)生成績表中可以存儲學(xué)生的編號信息表示是哪個學(xué)生的考試成績,這里面又引發(fā)一個問題:如果在成績表中輸入的學(xué)號根本不存在(例如錄入的時候把學(xué)號寫錯了)怎么辦呢?這個時候,應(yīng)該建立一種“引用”的關(guān)系,確保子表中的某個數(shù)據(jù)項在“主表”中必須存在,避免以上的事情發(fā)生?!巴怄I”就是實現(xiàn)這個目的的,它是對應(yīng)主鍵而言的,就是“子表”中對應(yīng)于“主表”的列,在子表中稱為外鍵或者引用鍵,它的值要求與主表的主鍵或者唯一鍵相對應(yīng),外鍵用來強制引用完整性,一個表可以有多個外鍵。知識擴展一、特殊表1.已分區(qū)表已分區(qū)表是將數(shù)據(jù)水平劃分為多個單元的表,這些單元可以分布到數(shù)據(jù)庫中的多個文件組中。在維護整個集合的完整性時,使用分區(qū)可以快速而有效地訪問或管理數(shù)據(jù)子集,從而使大型表或索引更易于管理。如果表非常大或者有可能變得非常大,并且屬于下列任一情況,則可能適于進行分區(qū):表中包含或可能包含以不同方式使用的許多數(shù)據(jù)。對表的查詢或更新沒有按照預(yù)期的方式執(zhí)行,或者維護開銷超出了預(yù)定義的維護期。已分區(qū)表支持所有與設(shè)計和查詢標準表關(guān)聯(lián)的屬性和功能,包括約束、默認值、標識和時間戳值、觸發(fā)器和索引。因此,如果要實現(xiàn)一臺服務(wù)器本地的分區(qū)視圖,用戶應(yīng)該改為實現(xiàn)已分區(qū)表。知識擴展2.臨時表
臨時表有本地表和全局表兩種類型。在與首次創(chuàng)建或引用表時相同的SQLServer實例連接期間,本地臨時表只對于創(chuàng)建者是可見的。當用戶與SQLServer實例斷開連接后,將刪除本地臨時表。全局臨時表在創(chuàng)建后對任何用戶和任何連接都是可見的,當引用該表的所有用戶都與SQLServer實例斷開連接后,將刪除全局臨時表。3.系統(tǒng)表
SQLServer將定義服務(wù)器配置及其所有表的數(shù)據(jù)存儲在一組特殊的表中,這組表稱為系統(tǒng)表,如系統(tǒng)表sysdatabases、sysobjects、sys?les、sysUsers、systypes等。除非通過專用的管理員連接(DAC,只能在Microsoft客戶服務(wù)的指導(dǎo)下使用),否則用戶無法直接查詢或更新系統(tǒng)表。4.寬表
寬表是定義了列集的表。寬表使用稀疏列,從而將表可以包含的總列數(shù)增大為30000列。索引數(shù)和統(tǒng)計信息數(shù)也分別增大為1000和30000。寬表行的最大大小為8019個字節(jié)。因此,任何特定行中的大部分數(shù)據(jù)都應(yīng)為NULL。若要創(chuàng)建寬表或?qū)⒈砀臑閷挶?,可以在相?yīng)表定義中添加列集。寬表中非稀疏列和計算列的列數(shù)之和仍不得超過1024。通過使用寬表,可以在應(yīng)用程序中創(chuàng)建靈活的架構(gòu)??梢愿鶕?jù)需要隨時添加或刪除列。使用寬表有獨特的注意事項,實例運行時和編譯時內(nèi)存需求增大。知識擴展二、使用模板創(chuàng)建數(shù)據(jù)表(1)啟動SQLServerManagementStudio,選擇“視圖”/“模板資源管理器”。(2)展開“Table”,雙擊CreateTable命令,打開CreateTable模板。(3)選擇“查詢”/“指定模板參數(shù)的值”選項,打開“指定模板參數(shù)的值”對話框。(4)在參數(shù)列找到table_name,單擊對應(yīng)的“值”列,輸入表名test_table,單擊“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高中數(shù)學(xué)最易丟分的20個知識點和易犯的72個低級錯誤
- 2025年Msoffice考試細則解析試題及答案
- DB36-T1805-2023-稻田磷素流失減控技術(shù)規(guī)程-江西省
- DB36-T1606-2022-山香圓栽培管理技術(shù)規(guī)程-江西省
- MySQL用戶管理試題及答案簡析
- 婦科腫瘤患者教育要點
- 生產(chǎn)管理通道認資資格練習(xí)試題及答案
- 護理管道標識粘貼規(guī)范與操作流程
- 患者入院護理操作規(guī)范
- 2025年滑雪教練職業(yè)技能測試卷:滑雪教學(xué)視頻點評與分析試題
- 2023高考地理高三一輪復(fù)習(xí)教學(xué)計劃和備考策略
- 投標咨詢服務(wù)協(xié)議(新修訂)
- 2022年虹口區(qū)事業(yè)單位公開招聘面試考官練習(xí)試題附答案
- Java程序設(shè)計項目教程(第二版)教學(xué)課件匯總完整版電子教案
- 能源經(jīng)濟學(xué)第10章-能源投融資
- 小學(xué)音樂說課萬能模板
- 鋼結(jié)構(gòu)監(jiān)理實施細則(全)
- 附件_景觀工作面移交表
- 民兵軍事訓(xùn)練大綱【精選文檔】
- 中藥學(xué)碩士專業(yè)學(xué)位指導(dǎo)性培養(yǎng)方案
- 繼電保護反措及二次回路(石嘴山講課)
評論
0/150
提交評論