




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、使用使用T-SQL建庫建表建庫建表課程地位PrevHTMLSQL BaseLogic JavaC#/WinFormsSTBProject1:ADO.Net+WinForms C/SADO.Net/Three TierJavaScriptSQL AdvanceJava OOPProject2: B/S.Net/OOPJSPAjax/Web ServiceJSP/Servlet/JavaBean/Web ServiceStruts/Hibernate/Spring/AjaxASP.NetNTCProject3: Net/Java HR/CRM/OA/B2C B/S行業(yè)手冊行業(yè)手冊課程目標(biāo)了解設(shè)計(jì)數(shù)
2、據(jù)庫的基本步驟了解設(shè)計(jì)數(shù)據(jù)庫的基本步驟熟練使用熟練使用T-SQL實(shí)現(xiàn)建庫、建表、加約束實(shí)現(xiàn)建庫、建表、加約束掌握掌握T-SQL編程,實(shí)現(xiàn)功能強(qiáng)大的查詢編程,實(shí)現(xiàn)功能強(qiáng)大的查詢掌握創(chuàng)建索引、視圖,快速訪問數(shù)據(jù)庫掌握創(chuàng)建索引、視圖,快速訪問數(shù)據(jù)庫 掌握創(chuàng)建存儲(chǔ)過程,實(shí)現(xiàn)復(fù)雜的業(yè)務(wù)規(guī)則掌握創(chuàng)建存儲(chǔ)過程,實(shí)現(xiàn)復(fù)雜的業(yè)務(wù)規(guī)則 掌握建庫的掌握建庫的SQL語句語句 掌握建表的掌握建表的SQL語句語句 掌握加約束的掌握加約束的SQL語句語句本章目標(biāo)回顧數(shù)據(jù)庫的基礎(chǔ)知識(shí) 數(shù)據(jù)庫文件的組成:數(shù)據(jù)庫文件的組成: 主數(shù)據(jù)文件:主數(shù)據(jù)文件:*.mdf 次要數(shù)據(jù)文件:次要數(shù)據(jù)文件:*.ndf 日志文件:日志文件:*.ld
3、f 數(shù)據(jù)庫的其他屬性數(shù)據(jù)庫的其他屬性: 文件存放位置,分配的初始空間,屬于哪個(gè)文件組文件存放位置,分配的初始空間,屬于哪個(gè)文件組 文件增長:可以按百分比或?qū)嶋H大小指定增長速度文件增長:可以按百分比或?qū)嶋H大小指定增長速度 文件容量設(shè)置:可以指定文件增長的最大值或不受限文件容量設(shè)置:可以指定文件增長的最大值或不受限創(chuàng)建數(shù)據(jù)庫 CREATE DATABASE 數(shù)據(jù)庫名數(shù)據(jù)庫名 ON PRIMARY ( ,n ) LOG ON ( ,n )T-SQL創(chuàng)建數(shù)據(jù)庫的語法:創(chuàng)建數(shù)據(jù)庫的語法:主文件組,可選參數(shù),默認(rèn)主文件組,可選參數(shù),默認(rèn)刪除數(shù)據(jù)庫如果如果SQL Server中已存在數(shù)據(jù)庫中已存在數(shù)據(jù)庫st
4、uDB,運(yùn)行下列語,運(yùn)行下列語句,會(huì)出現(xiàn)什么問題?句,會(huì)出現(xiàn)什么問題?CREATE DATABASE stuDBON (.)LOG ON(.)GO演示:再次運(yùn)行示例演示:再次運(yùn)行示例1USE master -設(shè)置當(dāng)前數(shù)據(jù)庫為設(shè)置當(dāng)前數(shù)據(jù)庫為master,以便訪問,以便訪問sysdatabases表表GOIF EXISTS(SELECT * FROM sysdatabases WHERE name =stuDB) DROP DATABASE stuDBCREATE DATABASE stuDBON ( .)LOG ON( )GO刪除數(shù)據(jù)庫刪除數(shù)據(jù)庫的語法:刪除數(shù)據(jù)庫的語法:DROP DATABA
5、SE 數(shù)據(jù)庫名數(shù)據(jù)庫名 EXISTS()語句:檢測是()語句:檢測是否存在否存在stuDB數(shù)據(jù)庫如果存數(shù)據(jù)庫如果存在在stuDB數(shù)據(jù)庫,則刪除數(shù)據(jù)庫,則刪除 小結(jié) 1請創(chuàng)建一個(gè)數(shù)據(jù)庫,數(shù)據(jù)庫名為請創(chuàng)建一個(gè)數(shù)據(jù)庫,數(shù)據(jù)庫名為BBS。其主。其主文件邏輯名為文件邏輯名為bbs,物理文件放到,物理文件放到D盤根目錄盤根目錄下,文件名為下,文件名為bbs.mdf,初始大小為,初始大小為3M,最,最大為大為10M,文件增長為,文件增長為10%。日志文件與主文。日志文件與主文件放在同一目錄下,文件名為件放在同一目錄下,文件名為bbs_log.ldf,初始大小為初始大小為2M,文件增長為,文件增長為5%?;仡?/p>
6、表的基礎(chǔ)知識(shí) 建表的基本步驟:建表的基本步驟: 確定表中有哪些列確定表中有哪些列 確定每列的數(shù)據(jù)類型確定每列的數(shù)據(jù)類型 給表添加各種約束給表添加各種約束 創(chuàng)建各表之間的關(guān)系創(chuàng)建各表之間的關(guān)系 SQL Server中的數(shù)據(jù)類型中的數(shù)據(jù)類型 整型數(shù)據(jù):整型數(shù)據(jù):int smallint 浮點(diǎn)數(shù)據(jù):浮點(diǎn)數(shù)據(jù):float numeric字符數(shù)據(jù)字符數(shù)據(jù)固定長度:固定長度:char(6)可變長度可變長度: varchar(10) unicode編碼:編碼:nchar(10) 布爾數(shù)據(jù)(真布爾數(shù)據(jù)(真/假)假) bit: 1/ 0 貨幣數(shù)據(jù)貨幣數(shù)據(jù) money日期數(shù)據(jù)日期數(shù)據(jù) datetime創(chuàng)建表建表的
7、語法建表的語法CREATE TABLE 表名表名 ( 字段字段1 數(shù)據(jù)類型數(shù)據(jù)類型 列的特征,列的特征, 字段字段2 數(shù)據(jù)類型數(shù)據(jù)類型 列的特征,列的特征, .)列的特征:列的特征:包括該列是是否為空(包括該列是是否為空(NULL)、是否是標(biāo)識(shí)列(自動(dòng)編號(hào))、是)、是否是標(biāo)識(shí)列(自動(dòng)編號(hào))、是否有默認(rèn)值、是否為主鍵等。否有默認(rèn)值、是否為主鍵等。 建表示例 1USE stuDB -將當(dāng)前數(shù)據(jù)庫設(shè)置為將當(dāng)前數(shù)據(jù)庫設(shè)置為stuDB GOCREATE TABLE stuInfo /*-創(chuàng)建學(xué)員信息表創(chuàng)建學(xué)員信息表-*/( stuName VARCHAR(20) NOT NULL , -姓名,非空(必填
8、)姓名,非空(必填) stuNo CHAR(6) NOT NULL, -學(xué)號(hào),非空(必填)學(xué)號(hào),非空(必填) stuAge INT NOT NULL, -年齡,年齡,INT類型默認(rèn)為類型默認(rèn)為4個(gè)字節(jié)個(gè)字節(jié) stuID NUMERIC(18,0), -身份證號(hào)身份證號(hào) stuSeat SMALLINT IDENTITY (1,1), -座位號(hào),自動(dòng)編號(hào)座位號(hào),自動(dòng)編號(hào) stuAddress TEXT -住址,允許為空,即可選輸入住址,允許為空,即可選輸入) GONUMERIC (18,0)代表代表18位數(shù)字,位數(shù)字,小數(shù)位數(shù)為小數(shù)位數(shù)為0演示:創(chuàng)建學(xué)員信息表演示:創(chuàng)建學(xué)員信息表stuInfoI
9、DENTITY(起始值,(起始值,遞增量)遞增量) 刪除表如果當(dāng)前數(shù)據(jù)庫中已存在如果當(dāng)前數(shù)據(jù)庫中已存在stuInfo表,再次創(chuàng)建時(shí)表,再次創(chuàng)建時(shí)系統(tǒng)將提示出錯(cuò)系統(tǒng)將提示出錯(cuò) 。如何解決呢?。如何解決呢?刪除表刪除表的語法:刪除表的語法:DROP TABLE 表名表名USE stuDB -將當(dāng)前數(shù)據(jù)庫設(shè)置為將當(dāng)前數(shù)據(jù)庫設(shè)置為stuDB ,以便在,以便在stuDB數(shù)據(jù)庫中建表數(shù)據(jù)庫中建表GOIF EXISTS(SELECT * FROM sysobjects WHERE name=stuInfo ) DROP TABLE stuInfoCREATE TABLE stuInfo /*-創(chuàng)建學(xué)員信息表
10、創(chuàng)建學(xué)員信息表-*/(.) GO小結(jié) 2請創(chuàng)建分?jǐn)?shù)表請創(chuàng)建分?jǐn)?shù)表(stuMarks):列名類型說明ExamNo(編號(hào))Int主鍵、自增長(1,1)stuNo(學(xué)員編號(hào))Int不為空writtenExam(筆試成績)Int不為空LabExam(機(jī)試成績)int不為空回顧SQL Server的約束約束的目的:確保表中數(shù)據(jù)的完整型約束的目的:確保表中數(shù)據(jù)的完整型常用的約束類型:常用的約束類型:主鍵約束(主鍵約束(Primary Key Constraint):要求主鍵列):要求主鍵列數(shù)據(jù)唯一,并且不允許為空數(shù)據(jù)唯一,并且不允許為空唯一約束(唯一約束(Unique Constraint):要求該列唯一
11、,):要求該列唯一,允許為空,但只能出現(xiàn)一個(gè)空值。允許為空,但只能出現(xiàn)一個(gè)空值。檢查約束(檢查約束(Check Constraint):某列取值范圍限制、):某列取值范圍限制、格式限制等,如有關(guān)年齡的約束格式限制等,如有關(guān)年齡的約束默認(rèn)約束(默認(rèn)約束(Default Constraint):某列的默認(rèn)值,):某列的默認(rèn)值,如我們的男性學(xué)員較多,性別默認(rèn)為如我們的男性學(xué)員較多,性別默認(rèn)為“男男”外鍵約束(外鍵約束(Foreign Key Constraint):用于兩表間):用于兩表間建立關(guān)系,需要指定引用主表的那列建立關(guān)系,需要指定引用主表的那列添加約束 添加約束的語法:添加約束的語法:ALT
12、ER TABLE 表名表名 ADD CONSTRAINT 約束名約束名 約束類型約束類型 具體的約束說明具體的約束說明 約束名的取名規(guī)則推薦采用:約束類型約束名的取名規(guī)則推薦采用:約束類型_約束字段約束字段 主鍵(主鍵(Primary Key)約束:如)約束:如 PK_stuNo 唯一(唯一(Unique Key)約束:如)約束:如 UQ_stuID 默認(rèn)(默認(rèn)(Default Key)約束:如)約束:如 DF_stuAddress 檢查(檢查(Check Key)約束:如)約束:如 CK_stuAge 外鍵外鍵(Foreign Key)約束:如約束:如 FK_stuNo 添加約束示例ALTE
13、R TABLE stuInfo ADD CONSTRAINT PK_stuNo PRIMARY KEY (stuNo)ALTER TABLE stuInfo ADD CONSTRAINT UQ_stuID UNIQUE (stuID)ALTER TABLE stuInfo ADD CONSTRAINT DF_stuAddress DEFAULT (地址不詳?shù)刂凡辉? FOR stuAddressALTER TABLE stuInfo ADD CONSTRAINT CK_stuAge CHECK(stuAge BETWEEN 15 AND 40)ALTER TABLE stuMarks ADD
14、CONSTRAINT FK_stuNo FOREIGN KEY(stuNo) REFERENCES stuInfo(stuNo)GO演示:給學(xué)員信息表演示:給學(xué)員信息表stuInfo添加約束添加約束添加主鍵約束(添加主鍵約束(stuNo作為主鍵)作為主鍵)添加唯一約束(因?yàn)槊咳说纳矸葑C號(hào)全國唯一)添加唯一約束(因?yàn)槊咳说纳矸葑C號(hào)全國唯一)添加默認(rèn)約束(如果地址不填,默認(rèn)為添加默認(rèn)約束(如果地址不填,默認(rèn)為“地址不詳?shù)刂凡辉敗保┨砑訖z查添加檢查check約束,要求年齡只能在約束,要求年齡只能在1540歲之間歲之間添加外鍵約束(主表添加外鍵約束(主表stuInfo和從表和從表stuMarks建立關(guān)系,關(guān)聯(lián)字段為建立關(guān)系,關(guān)聯(lián)字段為stuNo)刪除約束如果錯(cuò)誤地添加了約束,我們還可以刪除約束如果錯(cuò)誤地添加了約束,我們還可以刪除約束 刪除約束的語法刪除約束的語法ALTER TABLE 表名表名 DROP CONSTRAINT 約束名約束名 例如:刪除例如:刪除stuInfo表中地址默認(rèn)約束表中地址默認(rèn)約束ALTER TAB
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 臺(tái)球助教團(tuán)隊(duì)合同范本
- 委托公司項(xiàng)目執(zhí)行協(xié)議書
- 兩兄弟合建宅基地協(xié)議書
- 房屋損壞賠償簡約協(xié)議書
- 香油代加工合同范本
- 機(jī)械設(shè)備供應(yīng)合作協(xié)議書
- 乒乓球俱樂部贊助協(xié)議書
- 公司聘用境外人員協(xié)議書
- 德國解除口罩防護(hù)協(xié)議書
- 工業(yè)企業(yè)合伙合同范本
- 防范化解矛盾糾紛安全
- GB/T 45072-2024自然保護(hù)地名詞術(shù)語
- 漁船輪機(jī)管理考試復(fù)習(xí)題及答案
- 品管圈PDCA改善案例-降低住院患者跌倒發(fā)生率
- 汽車美容服務(wù)質(zhì)量管理制度
- 2024年廣東潮州中考物理一模試題 (含答案)
- 中國文化概況chapter-1
- 2024年中職高考數(shù)學(xué)計(jì)算訓(xùn)練 專題13 數(shù)列的相關(guān)計(jì)算
- ISO22716-執(zhí)行標(biāo)準(zhǔn)化妝品良好操作規(guī)范GMPC標(biāo)準(zhǔn)及內(nèi)審員培訓(xùn)教材
- 2024年全國高考數(shù)學(xué)試題及解析答案(新課標(biāo)Ⅱ卷)
- 工程造價(jià)咨詢服務(wù)投標(biāo)方案(技術(shù)方案)
評論
0/150
提交評論