




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)據(jù)庫SQLServeSQLite教程課程教案課程名稱:數(shù)據(jù)庫SQLServeSQLite教程課程號:課程學分:2參考學時:32課程性質(zhì):專業(yè)必修課適用專業(yè):計算機類專業(yè)上課時間:授課教師:負責人:審核單位:年月日-1-一、課程基本信息課程名稱數(shù)據(jù)庫SQLServeSQLite教程課程號課程性質(zhì)專業(yè)必修課開課部門課程負責人課程團隊授課學期學分/學時2/32授課語言漢語先修課程數(shù)據(jù)庫SQLServeSQLite教程課程簡介從理論實踐一體化角度出發(fā),介紹了數(shù)據(jù)庫的基本概念、理論、模型和方法,同時從知識技能的邏輯順序出發(fā),深入淺出地介紹了數(shù)據(jù)庫技術(shù)的相關(guān)內(nèi)容,使學生可以快速掌握數(shù)據(jù)庫系統(tǒng)的原理,應用有關(guān)工具學習SQL,并在C#、Python等相關(guān)課程中應用,在實際應用中解決實際問題。授課班級
二、課程授課教案第4章,共11章講課主題關(guān)系數(shù)據(jù)庫語言SQL(上)學時6學時教學目標從理論實踐一體化角度出發(fā),介紹了數(shù)據(jù)庫的基本概念、理論、模型和方法,同時從知識技能的邏輯順序出發(fā),深入淺出地介紹了數(shù)據(jù)庫技術(shù)的相關(guān)內(nèi)容,使學生可以快速掌握數(shù)據(jù)庫系統(tǒng)的原理,應用有關(guān)工具學習SQL,并在C#、Python等相關(guān)課程中應用,在實際應用中解決實際問題。教學重點、難點計算機信息管理技術(shù)和信息管理應用系統(tǒng)的發(fā)展為數(shù)據(jù)庫理論和數(shù)據(jù)庫應用系統(tǒng)的發(fā)展提供了強大的推動力。無論是基于C/S模式還是基于B/S模式,信息管理系統(tǒng)的開發(fā)都離不開數(shù)據(jù)庫系統(tǒng)。不論是加入許多新特性的VisualFoxpro數(shù)據(jù)庫,還是SQLServer、Oracles、MySQL、Sybase等數(shù)據(jù)庫,都在微型計算機上得到了推廣運用,服務于人們的學習和工作。教學設計授課提綱及重難點分析教學方法及課程思政設計教學時間4.1SQL概述結(jié)構(gòu)化查詢語言(StructuredQueryLanguage,SQL)是1974年由Boyce和Chamberlin提出的。1975—1979年,最早是IBM的圣約瑟研究實驗室為其關(guān)系數(shù)據(jù)庫管理系統(tǒng)SYSTEMR開發(fā)的一種查詢語言,它的前身是SQUARE語言。經(jīng)過各公司的不斷修改、擴充和完善,1986年美國頒布了SQL的美國標準,1987年國際標準化組織將SQL采納為國際標準,SQL最終成為關(guān)系數(shù)據(jù)庫的標準語言。由于SQL使用方便、功能豐富、語言簡潔易學,很快得到推廣和應用。SQL結(jié)構(gòu)簡潔,功能強大,簡單易學,自從IBM公司1981年推出以來,SQL得到了廣泛的應用。SQLServer、Oracle、Sybase、Informix等大型的數(shù)據(jù)庫管理系統(tǒng),VisualFoxpro、PowerBuilder等微機上常用的數(shù)據(jù)庫開發(fā)系統(tǒng),都支持SQL作為查詢語言。SQL集數(shù)據(jù)定義(DataDefinition)、數(shù)據(jù)操縱(DataManipulation)和數(shù)據(jù)控制(DataControl)等功能于一體,充分體現(xiàn)了關(guān)系數(shù)據(jù)庫語言的特點和優(yōu)點。SQL主要由以下幾部分組成:(1)數(shù)據(jù)定義語言(DataDefinitionLanguage,DDL)。數(shù)據(jù)定義語言用于建立、修改、刪除數(shù)據(jù)庫中的各種對象:表、視圖、索引等(如Create、Alter、Drop)。(2)數(shù)據(jù)操縱語言(DataManipulationLanguage,DML)。數(shù)據(jù)操縱語言用于改變數(shù)據(jù)庫數(shù)據(jù),主要有三條語句:Insert、Update、Delete。(3)數(shù)據(jù)查詢語言(DataQueryLanguage,DQL)。數(shù)據(jù)查詢語言用于檢索數(shù)據(jù)庫記錄,基本結(jié)構(gòu)是由Select子句、From子句、Where子句組成的查詢塊:Select<字段名表>From<表或視圖名>Where<查詢條件>。(4)數(shù)據(jù)控制語言(DataControlLanguage,DCL)。數(shù)據(jù)控制語言用來授予或回收訪問數(shù)據(jù)庫的某種特權(quán),并控制數(shù)據(jù)庫操縱事務發(fā)生的時間和效果,對數(shù)據(jù)庫實行監(jiān)視等,包括三條命令:Grant、Revoke和Deny。30min4.2SQL的數(shù)據(jù)類型在計算機中數(shù)據(jù)有兩種特征:類型和長度,所謂數(shù)據(jù)類型就是以數(shù)據(jù)的表現(xiàn)方式和存儲方式來劃分數(shù)據(jù)的種類。在SQLServer中,每個列、局部變量、表達式和參數(shù)都具有一個相關(guān)的數(shù)據(jù)類型。數(shù)據(jù)類型是一種屬性,用來設定某一個具體列保存數(shù)據(jù)的類型。數(shù)據(jù)類型可分為整數(shù)型、精確浮點型、近似浮點型、日期時間型等10種類型,下面依次介紹。1.整數(shù)型2.精確浮點型3.近似浮點型4.日期時間型5.字符型6.Unicode字符型7.二進制字符型8.貨幣型9.特殊數(shù)據(jù)類型10.用戶自定義數(shù)據(jù)類型30min4.3數(shù)據(jù)庫定義SQLServer2008R2用文件來存放數(shù)據(jù)庫。數(shù)據(jù)庫是由數(shù)據(jù)庫文件和事務日志文件組成的,一個數(shù)據(jù)庫至少應包含一個數(shù)據(jù)庫文件和一個事務日志文件。數(shù)據(jù)庫文件包含數(shù)據(jù)和對象,例如表、索引、視圖和存儲過程。事務日志文件包含恢復數(shù)據(jù)庫中的所有事務所需的信息。為便于分配和管理,可以將數(shù)據(jù)文件集合起來,放在文件組中。數(shù)據(jù)庫文件是存放數(shù)據(jù)庫數(shù)據(jù)和數(shù)據(jù)庫對象的文件。一個數(shù)據(jù)庫可以有一個或多個數(shù)據(jù)庫文件,一個數(shù)據(jù)庫文件只屬于一個數(shù)據(jù)庫。當有多個數(shù)據(jù)庫文件時,有一個文件被定義為主數(shù)據(jù)庫文件,擴展名為mdf,用來存儲數(shù)據(jù)庫的啟動信息和部分或全部數(shù)據(jù)。一個數(shù)據(jù)庫只能有一個主數(shù)據(jù)庫文件,其他數(shù)據(jù)庫文件被稱為次數(shù)據(jù)庫文件,擴展名為ndf,用來存儲主文件沒存儲的其他數(shù)據(jù)。4.3.1創(chuàng)建數(shù)據(jù)庫1.創(chuàng)建數(shù)據(jù)庫1)創(chuàng)建數(shù)據(jù)庫的最簡語法創(chuàng)建數(shù)據(jù)庫的最簡語法代碼如下:createdatabasedatabase_name在這種情況下,數(shù)據(jù)庫的參數(shù)設置都使用系統(tǒng)默認值。2)創(chuàng)建數(shù)據(jù)庫的完整語法2.菜單方式創(chuàng)建數(shù)據(jù)庫操作步驟如下:(1)在“對象資源管理器”中找到“數(shù)據(jù)庫”節(jié)點,右擊該節(jié)點,在彈出的快捷菜單中選擇“新建數(shù)據(jù)庫”命令。(2)在“新建數(shù)據(jù)庫”對話框的“常規(guī)”選項卡中,可輸入數(shù)據(jù)庫名稱、數(shù)據(jù)庫文件和事務日志文件的邏輯名稱,設置其初始大小、自動增長、路徑等參數(shù),(3)單擊“確定”按鈕,數(shù)據(jù)庫文件創(chuàng)建成功。4.3.2刪除數(shù)據(jù)庫1.命令方式刪除數(shù)據(jù)庫在SSMS中可以用dropdatabase命令一次刪除一個或多個數(shù)據(jù)庫。只有數(shù)據(jù)庫所有者和數(shù)據(jù)庫管理員才有權(quán)執(zhí)行此命令。刪除數(shù)據(jù)庫語法如下:dropdatabasedatabase_name[,...n]2.菜單方式刪除數(shù)據(jù)庫在SSMS中可以用菜單方式刪除數(shù)據(jù)庫。例如,刪除在例4-1中創(chuàng)建的學生成績數(shù)據(jù)庫(studscore_db1)。操作步驟如下:(1)在“對象資源管理器”下單擊“數(shù)據(jù)庫”前的“+”,展開。在數(shù)據(jù)庫“studscore_db1”上右擊鼠標彈出快捷菜單,單擊“刪除”命令。(2)進入“刪除對象”對話框,勾選“關(guān)閉現(xiàn)有連接(C)”,再單擊“確定”按鈕。4.3.3修改數(shù)據(jù)庫1.命令方式修改數(shù)據(jù)庫在SSMS中可以用alterdatabase命令來增加或刪除數(shù)據(jù)庫中的文件,修改文件的屬性。1)語法格式2)實際操作2.菜單方式修改數(shù)據(jù)庫在“對象資源管理器”下單擊“數(shù)據(jù)庫”前面的“+”,展開數(shù)據(jù)庫文件夾,在需要修改的數(shù)據(jù)庫上右擊鼠標,彈出快捷菜單,單擊“屬性”選項,進入“數(shù)據(jù)庫屬性”頁,在“文件”“文件組”選項卡可以進行數(shù)據(jù)庫文件、文件組的“添加”“刪除”等操作。30min4.4數(shù)據(jù)表定義數(shù)據(jù)定義語言(DDL)的主要功能是定義數(shù)據(jù)庫的模式,包括概念模式、外模式和內(nèi)模式。在SQL中對于不同的模式分別定義了一系列的語句。通過這些語句,數(shù)據(jù)庫管理員(DBA)可以創(chuàng)建和維護數(shù)據(jù)庫模式結(jié)構(gòu)。數(shù)據(jù)庫的三級模式結(jié)構(gòu)的核心是概念模式,它在SQL數(shù)據(jù)庫中表現(xiàn)為基本表的集合。4.4.1數(shù)據(jù)表的構(gòu)成一個數(shù)據(jù)表由表名、列和完整性約束構(gòu)成。具體如下:1.表名表名代表關(guān)系模式的名字,一般以字母開頭,并可包含字母、數(shù)字、#、_、@、$等符號。在一個數(shù)據(jù)庫中,表名不能重復,表的核心構(gòu)成是列和完整性約束。2.列表的列對應著關(guān)系模式的屬性,通常也稱為字段。在關(guān)系模式中,屬性由屬性名和域構(gòu)成,相應在表中,列包括列名、列的類型和長度等信息。其中,列名要求以字母開頭,并可包含字母、數(shù)字、#、_等符號,并且要求不多于30個字符。3.完整性約束約束(Constraint)是指附加在表上,通過限制列中、行中、表之間的數(shù)據(jù)來保證數(shù)據(jù)完整性的一種數(shù)據(jù)庫對象。在表定義中,約束可以定義在每個列定義中,也可以在所有列定義之后再單獨定義。把直接定義在一個列定義之后的約束稱為列約束,把定義在全部列定義之后的約束稱為表約束。列約束和表約束在語義上沒什么差別,只是位置不同而已,單列上的約束可以定義成列約束也可以定義成表約束。如果某個約束需要定義在多個列之上,則必須通過表約束來實現(xiàn)。數(shù)據(jù)的完整性就是指存儲在數(shù)據(jù)庫中的數(shù)據(jù)的準確性和一致性,通過實體完整性、參照完整性、域完整性和用戶自定義完整性等完整性約束來實現(xiàn)。4.4.2創(chuàng)建表1.命令方式創(chuàng)建表1)創(chuàng)建表的命令和語法格式創(chuàng)建數(shù)據(jù)庫后,需要使用SQL語句createtable創(chuàng)建數(shù)據(jù)表。2)定義列和約束首先,創(chuàng)建表時主要是對列的定義以及添加約束。列約束必須在每個列定義后再進行定義,只對當前列有效。其次,表的約束按應用范圍分為列級和表級約束。此外,按作用可分為主鍵約束、不允許空約束、默認值約束、唯一性約束、檢查約束、外鍵約束等。需要指出,當一個約束中必須包含多個列時,須使用表約束。單列上的約束可以用列約束,也可用表約束。3)創(chuàng)建帶約束的表(1)primarykey約束。在SQLServer中,主鍵(primarykey)保證實體完整性,可以是單列,也可以是多列組合。其特點為:一個表只能定義一個主鍵約束;主鍵約束所在列(或組合值)不允許輸入重復值;所在列不允許取空值;主鍵約束自動在指定的列上創(chuàng)建了一個唯一性索引,默認為聚集索引。(2)default約束。默認值(default)約束的語法格式如下:default<值>default約束的特點為:每個列只能定義一個默認值;默認值不能引用其他列或其他表、視圖或存儲過程;不能放在identity列或timestamp列。當向表中插入一條新記錄時,如果某列上有默認值,并且新記錄中未指定該列的值,則自動以默認值填充。設置默認值約束時應注意,如果默認值是字符型,要加單引號;如果默認值是數(shù)值,則直接寫出數(shù)值。(3)unique約束。唯一性(unique)約束是指表中的某一列或多列不能有相同的兩行或多行數(shù)據(jù)存在。其特點為:不能是主鍵約束所在列;每個表可以定義多個唯一性約束;約束所在列不允許輸入重復值(或組合值不重復);所在列允許有空值;在指定列自動創(chuàng)建一個唯一性索引,默認非聚集索引。(4)foreignkey約束。在SQLServer中,使用外鍵(foreignkey)保證參照完整性。外鍵約束用于建立和加強兩個表之間的連接的一列或多列,也就是表中某列值引用其他表的主鍵列或unique列。外鍵表的被約束列的取值,必須是主鍵表的被約束列的值。其特點為:每個表可以定義多個外鍵約束;外鍵表中被約束的列必須和主鍵表中被約束的列寬度一致、數(shù)據(jù)類型一致;外鍵約束不能自動創(chuàng)建索引;當向設有外鍵約束的表(子表)中插入記錄或更新記錄時,該記錄被約束列的值必須在參照的主鍵表(父表)中存在。(5)check約束。檢查(check)約束用于驗證輸入數(shù)據(jù)的有效性,從而保證域完整性。其特點為:每個表可以定義多個檢查約束;可以參考本表中的其他列;檢查約束不能放在identity列或timestamp列(它們自動插入數(shù)據(jù));插入或更新記錄時,滿足條件才能錄入。2.菜單方式創(chuàng)建表4.4.3修改表1.命令方式修改表altertable命令可以添加或刪除表的列、約束,也可以禁用或啟用已存在的約束或觸發(fā)器。1)修改列2)增加列3)刪除列4)增加或刪除約束2.菜單方式修改表創(chuàng)建的表只是表的結(jié)構(gòu),因此修改表也是修改表的結(jié)構(gòu),還可以建立表的外鍵關(guān)系。以表books(包括bookid、categorycode列)和表categories(包括categorycode、categoryname列)為例進行介紹。1)修改表結(jié)構(gòu)(1)在“對象資源管理器”中展開數(shù)據(jù)庫節(jié)點和表節(jié)點,鼠標右擊已經(jīng)存在的表(如categories表),在彈出的快捷菜單中選擇“設計”命令。(2)在“表設計器”工作界面,可以修改表的結(jié)構(gòu),如列名、數(shù)據(jù)類型及其長度、主鍵。然后單擊工具欄的“保存”命令,或用鼠標右擊文件名,單擊“保存”命令。2)添加外鍵約束(1)在“對象資源管理器”中展開數(shù)據(jù)庫節(jié)點和表節(jié)點,在表books上單擊鼠標右鍵,在彈出的快捷菜單中選擇“設計”命令,打開一個選項卡顯示表books的定義。(2)在表books的定義中,在categorycode列單擊鼠標右鍵,在彈出的快捷菜單中選擇“關(guān)系”命令,或在“表設計器”菜單中單擊“關(guān)系”命令,彈出“外鍵關(guān)系”對話框,單擊“添加”按鈕,在“選定的關(guān)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 修理廠和供貨商合同范本
- 公寓開荒保潔合同范本
- 加裝電梯加盟合同范本
- canying勞動合同范本
- 剝離工程合同范本
- 保理 保證合同范本
- 養(yǎng)鵝訂單合同范本
- 中介居間服務合同范本
- 催收咨詢服務合同范例
- 加工制作維修合同范例
- 壘球教案完整版本
- 2024年南京鐵道職業(yè)技術(shù)學院單招職業(yè)傾向性測試題庫附答案
- 2024年蘇州農(nóng)業(yè)職業(yè)技術(shù)學院單招職業(yè)適應性測試題庫含答案
- 2024年江蘇經(jīng)貿(mào)職業(yè)技術(shù)學院單招職業(yè)適應性測試題庫含答案
- 2024年大理農(nóng)林職業(yè)技術(shù)學院單招職業(yè)適應性測試題庫含答案
- C語言課程思政案例
- 發(fā)展?jié)h語初級口語I-第11課課件
- 《柔性棚洞防護結(jié)構(gòu)技術(shù)規(guī)程》
- 現(xiàn)場施工環(huán)境保護應急預案
- 危險廢物綜合利用與處置技術(shù)規(guī)范 通則
- 社區(qū)舞蹈隊章程
評論
0/150
提交評論