第5章創(chuàng)建和管理數(shù)據(jù)表_第1頁(yè)
第5章創(chuàng)建和管理數(shù)據(jù)表_第2頁(yè)
第5章創(chuàng)建和管理數(shù)據(jù)表_第3頁(yè)
第5章創(chuàng)建和管理數(shù)據(jù)表_第4頁(yè)
第5章創(chuàng)建和管理數(shù)據(jù)表_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第5章 創(chuàng)建和管理數(shù)據(jù)表創(chuàng)建用戶數(shù)據(jù)庫(kù)之后,接下來(lái)的重要工作就是創(chuàng)建和管理數(shù)據(jù)表。數(shù)據(jù)表是數(shù)據(jù)庫(kù)的基本構(gòu)成單元,它用來(lái)保存用戶的各類數(shù)據(jù)。后續(xù)的各種操作也是在此基礎(chǔ)上進(jìn)行,所以數(shù)據(jù)表是數(shù)據(jù)庫(kù)中最重要的對(duì)象。在實(shí)際應(yīng)用中,數(shù)據(jù)表常用的操作包括數(shù)據(jù)表的創(chuàng)建、數(shù)據(jù)表的管理及約束與默認(rèn)的管理,本章將對(duì)這些操作依次進(jìn)行詳細(xì)講解。5.1 SQL

Server

2008的數(shù)據(jù)表概述在介紹數(shù)據(jù)表的創(chuàng)建和管理之前,我們首先介紹三個(gè)與數(shù)據(jù)表相關(guān)的概念:約束、默認(rèn)和規(guī)則。約束約束是SQL

Server

2008強(qiáng)制實(shí)行的應(yīng)用規(guī)則。它通過(guò)限制列、行、和表中的數(shù)據(jù)來(lái)保證數(shù)據(jù)表中數(shù)據(jù)的完整性。當(dāng)刪除表時(shí),表所帶的約束也隨之被刪除。約束使用將在后面的章節(jié)中介紹。默認(rèn)默認(rèn)是實(shí)現(xiàn)上述目的的數(shù)據(jù)庫(kù)對(duì)象。用戶可以事先定義好,需要時(shí)將它綁定到數(shù)據(jù)表的一列或多列上。當(dāng)向表中插入數(shù)據(jù)行時(shí),系統(tǒng)自動(dòng)為沒(méi)有指定數(shù)據(jù)的列提供事先定義的默認(rèn)值。規(guī)則規(guī)則的作用是當(dāng)向表中插入數(shù)據(jù)時(shí),指定該列接受數(shù)據(jù)值的5.2 使用SQL

Server

2008創(chuàng)建表本節(jié)將具體介紹使用SQL

Server

2008創(chuàng)建表的幾種不同方式,包括使用SQL

Server

ManagementStudio方式、使用查詢編輯器的方式及使用模板的方式。5.2.1 SQL

Server

2008支持的數(shù)據(jù)類型在創(chuàng)建表時(shí),首先要確定數(shù)據(jù)表中各列的數(shù)據(jù)格式是數(shù)值、字符、日期,還是貨幣、圖像等其他格式。只有設(shè)計(jì)好數(shù)據(jù)表的結(jié)構(gòu),系統(tǒng)才會(huì)在磁盤上分配物理空間,用戶才能向表中填寫數(shù)據(jù)。在SQL

Server

2008的數(shù)據(jù)表中,列的數(shù)據(jù)類型既可以是系統(tǒng)提供的數(shù)據(jù)類型,也可以是用戶自定義的數(shù)據(jù)類型。SQLServer

2008系統(tǒng)提供了豐富的數(shù)據(jù)類型。除第4章中T-SQL支持的數(shù)據(jù)類型外,還新增了部分?jǐn)?shù)據(jù)類型。5.2.2 通過(guò)SQL

Server

ManagementStudio創(chuàng)建表通過(guò)SQL

Server

2008創(chuàng)建數(shù)據(jù)表可以有幾種不同的方式,本節(jié)我們首先介紹使用SQL

Server

ManagementStudio創(chuàng)建表的方式。該方法操作簡(jiǎn)單,使用方便。5.2.3

通過(guò)查詢編輯器創(chuàng)建表本節(jié)將介紹使用查詢編輯器創(chuàng)建表的方法,該方法通過(guò)使用Transact-SQL語(yǔ)句中的CREATE

TABLE命令來(lái)完成創(chuàng)建。該方法具有簡(jiǎn)單、安全、高性能的優(yōu)點(diǎn),其語(yǔ)法格式如下:CREATE

TABLE

table_name(Col_

name

column_

properties[,…])其中,tab1e_name表示表的名稱;Col_name表示列的名稱;columnproperties表示列的屬性(包括列的數(shù)據(jù)類型、是否設(shè)置為主鍵、列上的約束等)。5.2.4

通過(guò)模板創(chuàng)建表在SQL

Server

2005或更早的版本的數(shù)據(jù)庫(kù)中,表變量是不能作為存儲(chǔ)過(guò)程的參數(shù)的。當(dāng)多行數(shù)據(jù)到SQL

Server需要發(fā)送多行數(shù)據(jù)到SQL

Server

,開發(fā)者要么每次發(fā)送一列記錄,或想出其他的變通方法,以滿足需求。SQL

Server2008中的T-SQL功能新增了表值參數(shù)。5.3 使用SQL

Server

2008管理表數(shù)據(jù)表創(chuàng)建以后,在使用過(guò)程中可能需要對(duì)原先定義的表的結(jié)構(gòu)進(jìn)行修改。具體的修改包括更改表名、增加列、刪除列、修改已有列的屬性等。5.3.1

修改表名下面對(duì)上一節(jié)創(chuàng)建的person1表進(jìn)行重命名,首先在SQLServer

ManagementStudio的【對(duì)象資源管理器】面板中展開【userDB1】|【表】分支,選擇其中的【dbo.personl】分支并右擊,在彈出的快捷菜單中,單擊【重命名】命令,然后在原表名上輸入表的新名稱person2,重命名后。5.3.2

增加列當(dāng)需要向表中增加項(xiàng)目時(shí),就要向表中增加列。例如,對(duì)已有的person表增加一列“home”,可以采用下面兩種方法進(jìn)行:使用對(duì)象資源管理器使用SQL語(yǔ)句5.3.3

刪除列刪除表中已有的列,也可以采用與上節(jié)類似的兩種方法進(jìn)行:使用對(duì)象資源管理器使用SQL語(yǔ)句5.3.4

修改已有列的屬性和增加刪除列類似,在SQL

Server

ManagementStudio的【對(duì)象資源管理器】面板中打開表的【修改】面板,可以對(duì)已有列的列名、數(shù)據(jù)類型、長(zhǎng)度以及是否允許為空值等屬性直接進(jìn)行修改。修改完畢后,單擊“保存”按鈕以保存修改的結(jié)構(gòu)。5.4 使用SQL

Server

2008管理約束創(chuàng)建表需要首先定義表結(jié)構(gòu),即給表的每一列取列名,并確定每一列的數(shù)據(jù)類型、數(shù)據(jù)長(zhǎng)度、列數(shù)據(jù)是否可以為空等。然后,設(shè)置每列輸入值的取值范圍,以保證輸入數(shù)據(jù)正確性。本節(jié)將介紹在創(chuàng)建表的過(guò)程中如何設(shè)置約束。5.4.1

約束的類型SQL

Server

2008中有5種約束類型,分別是CHECK約束、

DEFAULT約束、PRIMARY

KEY約束、FOREIGN

KEY約束和UNIQUE約束。5.4.2

創(chuàng)建約束采用T-SQL創(chuàng)建CHECK約束采用SSMS創(chuàng)建CHECK約束采用SSMS創(chuàng)建DEFAULT約束采用T-SQL創(chuàng)建DEFAULT約束采用SSMS創(chuàng)建PRIMARY

KEY約束采用T-SQL創(chuàng)建PRIMARY

KEY約束采用SSMS創(chuàng)建FOREIGNKEY約束。采用T-SQL代碼創(chuàng)建FOREIGN

KEY約束采用SSMS創(chuàng)建UNIQUE約束5.4.3

查看約束如圖5.33所示,單擊【wj】|【表】|【dbo.student】|【約束】分支項(xiàng),可以查看新創(chuàng)建的CHECK約束CK_student。雙擊【CK_student】分支項(xiàng),彈出CHECK約束設(shè)計(jì)界面,如圖5.23所示。默認(rèn)約束直接在表設(shè)計(jì)界面中查看即可。查看CHECK約束查看主鍵和外鍵約束5.4.4

刪除約束要?jiǎng)h除創(chuàng)建的約束,也直接可以采用SSMS和T-SQL兩種方式。因?yàn)镻RIMARY

KEY在創(chuàng)建后往往不再刪除,

DEFAULT約束和UNIQUE約束比較直觀,本節(jié)主要介紹刪除CHECK約束和FOREIGN

KEY的刪除方法。5.5 使用SQL

Server

2008管理默認(rèn)和規(guī)則默認(rèn)和規(guī)則能夠?yàn)镾QL

Server數(shù)據(jù)庫(kù)提供與約束類似的功能,本節(jié)將主要介紹如何使用SQL

Server

2008來(lái)對(duì)默認(rèn)和規(guī)則進(jìn)行管理。5.5.1

管理默認(rèn)可以使用T-SQL代碼創(chuàng)建默認(rèn),創(chuàng)建默認(rèn)的T-SQL命令如下:CREATE

DEFAULT

default_name --defaultname表示新建立的默認(rèn)的名稱。AS

constraint

expression --constraintexpession指定默認(rèn)常量表達(dá)式的值。5.5.2

管理規(guī)則規(guī)則與CHECK約束的關(guān)系相對(duì)于默認(rèn)與DEEAULT約束的關(guān)系一樣,規(guī)則這種數(shù)據(jù)庫(kù)對(duì)象的作用與CHECK約束一樣,只不過(guò)規(guī)則不固定于哪個(gè)列,而是在創(chuàng)建好以后,指定插入數(shù)據(jù)表列上的有效值,從而確保用戶在該列上輸入的數(shù)據(jù)是在指定的范圍之內(nèi)。使用語(yǔ)句創(chuàng)建規(guī)則的語(yǔ)法如下:CREATE

RULE

rule_name

--

rule_name表示新建的規(guī)則名。AS

condition_expression --

condition_expression表示定義規(guī)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論