使用T-SQL建庫建表-文檔資料_第1頁
使用T-SQL建庫建表-文檔資料_第2頁
使用T-SQL建庫建表-文檔資料_第3頁
使用T-SQL建庫建表-文檔資料_第4頁
使用T-SQL建庫建表-文檔資料_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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è)手冊課程目標了解設計數

2、據庫的基本步驟了解設計數據庫的基本步驟熟練使用熟練使用T-SQL實現建庫、建表、加約束實現建庫、建表、加約束掌握掌握T-SQL編程,實現功能強大的查詢編程,實現功能強大的查詢掌握創(chuàng)建索引、視圖,快速訪問數據庫掌握創(chuàng)建索引、視圖,快速訪問數據庫 掌握創(chuàng)建存儲過程,實現復雜的業(yè)務規(guī)則掌握創(chuàng)建存儲過程,實現復雜的業(yè)務規(guī)則 掌握建庫的掌握建庫的SQL語句語句 掌握建表的掌握建表的SQL語句語句 掌握加約束的掌握加約束的SQL語句語句本章目標回顧數據庫的基礎知識 數據庫文件的組成:數據庫文件的組成: 主數據文件:主數據文件:*.mdf 次要數據文件:次要數據文件:*.ndf 日志文件:日志文件:*.ld

3、f 數據庫的其他屬性數據庫的其他屬性: 文件存放位置,分配的初始空間,屬于哪個文件組文件存放位置,分配的初始空間,屬于哪個文件組 文件增長:可以按百分比或實際大小指定增長速度文件增長:可以按百分比或實際大小指定增長速度 文件容量設置:可以指定文件增長的最大值或不受限文件容量設置:可以指定文件增長的最大值或不受限創(chuàng)建數據庫 CREATE DATABASE 數據庫名數據庫名 ON PRIMARY ( ,n ) LOG ON ( ,n )T-SQL創(chuàng)建數據庫的語法:創(chuàng)建數據庫的語法:主文件組,可選參數,默認主文件組,可選參數,默認刪除數據庫如果如果SQL Server中已存在數據庫中已存在數據庫st

4、uDB,運行下列語,運行下列語句,會出現什么問題?句,會出現什么問題?CREATE DATABASE stuDBON (.)LOG ON(.)GO演示:再次運行示例演示:再次運行示例1USE master -設置當前數據庫為設置當前數據庫為master,以便訪問,以便訪問sysdatabases表表GOIF EXISTS(SELECT * FROM sysdatabases WHERE name =stuDB) DROP DATABASE stuDBCREATE DATABASE stuDBON ( .)LOG ON( )GO刪除數據庫刪除數據庫的語法:刪除數據庫的語法:DROP DATABA

5、SE 數據庫名數據庫名 EXISTS()語句:檢測是()語句:檢測是否存在否存在stuDB數據庫如果存數據庫如果存在在stuDB數據庫,則刪除數據庫,則刪除 小結 1請創(chuàng)建一個數據庫,數據庫名為請創(chuàng)建一個數據庫,數據庫名為BBS。其主。其主文件邏輯名為文件邏輯名為bbs,物理文件放到,物理文件放到D盤根目錄盤根目錄下,文件名為下,文件名為bbs.mdf,初始大小為,初始大小為3M,最,最大為大為10M,文件增長為,文件增長為10%。日志文件與主文。日志文件與主文件放在同一目錄下,文件名為件放在同一目錄下,文件名為bbs_log.ldf,初始大小為初始大小為2M,文件增長為,文件增長為5%。回顧

6、表的基礎知識 建表的基本步驟:建表的基本步驟: 確定表中有哪些列確定表中有哪些列 確定每列的數據類型確定每列的數據類型 給表添加各種約束給表添加各種約束 創(chuàng)建各表之間的關系創(chuàng)建各表之間的關系 SQL Server中的數據類型中的數據類型 整型數據:整型數據:int smallint 浮點數據:浮點數據:float numeric字符數據字符數據固定長度:固定長度:char(6)可變長度可變長度: varchar(10) unicode編碼:編碼:nchar(10) 布爾數據(真布爾數據(真/假)假) bit: 1/ 0 貨幣數據貨幣數據 money日期數據日期數據 datetime創(chuàng)建表建表的

7、語法建表的語法CREATE TABLE 表名表名 ( 字段字段1 數據類型數據類型 列的特征,列的特征, 字段字段2 數據類型數據類型 列的特征,列的特征, .)列的特征:列的特征:包括該列是是否為空(包括該列是是否為空(NULL)、是否是標識列(自動編號)、是)、是否是標識列(自動編號)、是否有默認值、是否為主鍵等。否有默認值、是否為主鍵等。 建表示例 1USE stuDB -將當前數據庫設置為將當前數據庫設置為stuDB GOCREATE TABLE stuInfo /*-創(chuàng)建學員信息表創(chuàng)建學員信息表-*/( stuName VARCHAR(20) NOT NULL , -姓名,非空(必填

8、)姓名,非空(必填) stuNo CHAR(6) NOT NULL, -學號,非空(必填)學號,非空(必填) stuAge INT NOT NULL, -年齡,年齡,INT類型默認為類型默認為4個字節(jié)個字節(jié) stuID NUMERIC(18,0), -身份證號身份證號 stuSeat SMALLINT IDENTITY (1,1), -座位號,自動編號座位號,自動編號 stuAddress TEXT -住址,允許為空,即可選輸入住址,允許為空,即可選輸入) GONUMERIC (18,0)代表代表18位數字,位數字,小數位數為小數位數為0演示:創(chuàng)建學員信息表演示:創(chuàng)建學員信息表stuInfoI

9、DENTITY(起始值,(起始值,遞增量)遞增量) 刪除表如果當前數據庫中已存在如果當前數據庫中已存在stuInfo表,再次創(chuàng)建時表,再次創(chuàng)建時系統(tǒng)將提示出錯系統(tǒng)將提示出錯 。如何解決呢?。如何解決呢?刪除表刪除表的語法:刪除表的語法:DROP TABLE 表名表名USE stuDB -將當前數據庫設置為將當前數據庫設置為stuDB ,以便在,以便在stuDB數據庫中建表數據庫中建表GOIF EXISTS(SELECT * FROM sysobjects WHERE name=stuInfo ) DROP TABLE stuInfoCREATE TABLE stuInfo /*-創(chuàng)建學員信息表

10、創(chuàng)建學員信息表-*/(.) GO小結 2請創(chuàng)建分數表請創(chuàng)建分數表(stuMarks):列名類型說明ExamNo(編號)Int主鍵、自增長(1,1)stuNo(學員編號)Int不為空writtenExam(筆試成績)Int不為空LabExam(機試成績)int不為空回顧SQL Server的約束約束的目的:確保表中數據的完整型約束的目的:確保表中數據的完整型常用的約束類型:常用的約束類型:主鍵約束(主鍵約束(Primary Key Constraint):要求主鍵列):要求主鍵列數據唯一,并且不允許為空數據唯一,并且不允許為空唯一約束(唯一約束(Unique Constraint):要求該列唯一

11、,):要求該列唯一,允許為空,但只能出現一個空值。允許為空,但只能出現一個空值。檢查約束(檢查約束(Check Constraint):某列取值范圍限制、):某列取值范圍限制、格式限制等,如有關年齡的約束格式限制等,如有關年齡的約束默認約束(默認約束(Default Constraint):某列的默認值,):某列的默認值,如我們的男性學員較多,性別默認為如我們的男性學員較多,性別默認為“男男”外鍵約束(外鍵約束(Foreign Key Constraint):用于兩表間):用于兩表間建立關系,需要指定引用主表的那列建立關系,需要指定引用主表的那列添加約束 添加約束的語法:添加約束的語法:ALT

12、ER TABLE 表名表名 ADD CONSTRAINT 約束名約束名 約束類型約束類型 具體的約束說明具體的約束說明 約束名的取名規(guī)則推薦采用:約束類型約束名的取名規(guī)則推薦采用:約束類型_約束字段約束字段 主鍵(主鍵(Primary Key)約束:如)約束:如 PK_stuNo 唯一(唯一(Unique Key)約束:如)約束:如 UQ_stuID 默認(默認(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 (地址不詳地址不詳) 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演示:給學員信息表演示:給學員信息表stuInfo添加約束添加約束添加主鍵約束(添加主鍵約束(stuNo作為主鍵)作為主鍵)添加唯一約束(因為每人的身份證號全國唯一)添加唯一約束(因為每人的身份證號全國唯一)添加默認約束(如果地址不填,默認為添加默認約束(如果地址不填,默認為“地址不詳地址不詳”)添加檢查添加檢查check約束,要求年齡只能在約束,要求年齡只能在1540歲之間歲之間添加外鍵約束(主表添加外鍵約束(主表stuInfo和從表和從表stuMarks建立關系,關聯字段為建立關系,關聯字段為stuNo)刪除約束如果錯誤地添加了約束,我們還可以刪除約束如果錯誤地添加了約束,我們還可以刪除約束 刪除約束的語法刪除約束的語法ALTER TABLE 表名表名 DROP CONSTRAINT 約束名約束名 例如:刪除例如:刪除stuInfo表中地址默認約束表中地址默認約束ALTER TAB

溫馨提示

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

評論

0/150

提交評論