第06章 數(shù)據表的創(chuàng)建與管理_第1頁
第06章 數(shù)據表的創(chuàng)建與管理_第2頁
第06章 數(shù)據表的創(chuàng)建與管理_第3頁
第06章 數(shù)據表的創(chuàng)建與管理_第4頁
第06章 數(shù)據表的創(chuàng)建與管理_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、11第第6章章 數(shù)據表的創(chuàng)建與管理數(shù)據表的創(chuàng)建與管理22本章內容本章內容n 6.1 數(shù)據表的建立數(shù)據表的建立n 6.2 數(shù)據表的修改數(shù)據表的修改 336.1 數(shù)據表的建立數(shù)據表的建立n數(shù)據類型數(shù)據類型 SQL ServerSQL Server支持支持4 4種基本數(shù)據類型:字符和二進制數(shù)據類型、日期時種基本數(shù)據類型:字符和二進制數(shù)據類型、日期時間數(shù)據類型、邏輯數(shù)據類型、數(shù)字數(shù)據類型,用于各類數(shù)據值的存儲、間數(shù)據類型、邏輯數(shù)據類型、數(shù)字數(shù)據類型,用于各類數(shù)據值的存儲、檢索和解釋。檢索和解釋。 1.1.系統(tǒng)數(shù)據類型系統(tǒng)數(shù)據類型(1)(1)精確數(shù)值類型精確數(shù)值類型精確數(shù)值數(shù)據類型用于存儲有小數(shù)點且小數(shù)

2、點后位數(shù)確定的實數(shù)精確數(shù)值數(shù)據類型用于存儲有小數(shù)點且小數(shù)點后位數(shù)確定的實數(shù) 。格式:格式:decimal(p, s)numeric(p, s)(2)近似數(shù)值類型近似數(shù)值類型用于表示浮點數(shù)值數(shù)據的近似數(shù)值數(shù)據類型。用于表示浮點數(shù)值數(shù)據的近似數(shù)值數(shù)據類型。446.1 數(shù)據表的建立數(shù)據表的建立(3)日期和時間類型日期和時間類型日期時間數(shù)據類型用于存儲日期和時間數(shù)據。日期時間數(shù)據類型用于存儲日期和時間數(shù)據。SQL Server支持兩種日期時間數(shù)據類型:支持兩種日期時間數(shù)據類型:datetime和和smalldatetime。 (4)字符串類型字符串類型字符數(shù)據類型用于存儲漢字、英文字母、數(shù)字符號和其字

3、符數(shù)據類型用于存儲漢字、英文字母、數(shù)字符號和其他各種符號。他各種符號。char數(shù)據類型數(shù)據類型 varchar數(shù)據類型數(shù)據類型 text數(shù)據類型數(shù)據類型556.1 數(shù)據表的建立數(shù)據表的建立(5)Unicode(5)Unicode字符串類型字符串類型SQL ServerSQL Server允許使用多國語言,采用允許使用多國語言,采用UnicodeUnicode標準字符集。標準字符集。為此為此SQL ServerSQL Server提供多字節(jié)的字符數(shù)據類型:提供多字節(jié)的字符數(shù)據類型:nchar(n)nchar(n)、nvarchar(n)nvarchar(n)和和ntextntext。(6)(6)

4、二進制字符串類型二進制字符串類型SQL ServerSQL Server二進制數(shù)據類型用于存儲二進制數(shù)或字符串。二進制數(shù)據類型用于存儲二進制數(shù)或字符串。 SQL ServerSQL Server的的3 3種有效二進制數(shù)據類型:種有效二進制數(shù)據類型: binarybinary數(shù)據類型數(shù)據類型 varbinary(n)varbinary(n)數(shù)據類型數(shù)據類型 imageimage數(shù)據類型數(shù)據類型 666.1 數(shù)據表的建立數(shù)據表的建立(7)(7)其他數(shù)據類型其他數(shù)據類型1)cursor1)cursor。游標是變量或存儲過程參數(shù)。游標是變量或存儲過程參數(shù)OUTPUTOUTPUT的一種數(shù)據類型,這的一種

5、數(shù)據類型,這些參數(shù)包含對游標的引用。些參數(shù)包含對游標的引用。2)sql_variant2)sql_variant:可變數(shù)據類型。該類型的變量可用來存放大部分:可變數(shù)據類型。該類型的變量可用來存放大部分SQL ServerSQL Server數(shù)據類型的值,最大長度為數(shù)據類型的值,最大長度為80168016字節(jié),不支持字節(jié),不支持texttext、ntextntext、timestamptimestamp和和sql_variantsql_variant類型。類型。3)table3)table:表類型。這是一種特殊的數(shù)據類型,存儲供以后處理的結:表類型。這是一種特殊的數(shù)據類型,存儲供以后處理的結果集

6、。果集。4)Timestamp4)Timestamp:時間戳數(shù)據類型,用于自動記錄插入或刪除操作的時:時間戳數(shù)據類型,用于自動記錄插入或刪除操作的時間。間。注意:服務器不允許用戶指定時間戳值。注意:服務器不允許用戶指定時間戳值。5)uniqueidentifier5)uniqueidentifier:GUIDGUID類型類型(Global Unique IDentifier, (Global Unique IDentifier, 全局全局惟一標識符惟一標識符) )。 2. 用戶定義數(shù)據類型用戶定義數(shù)據類型776.1 數(shù)據表的建立數(shù)據表的建立n 使用圖形工具創(chuàng)建數(shù)據表使用圖形工具創(chuàng)建數(shù)據表n 使

7、用使用Transact-SQL語句創(chuàng)建表語句創(chuàng)建表語法格式:語法格式:CREATE TABLE database_name . schema_name . | schema_name . table_name ( ,.n )886.1 數(shù)據表的建立數(shù)據表的建立【例【例6.1續(xù)】利用續(xù)】利用Transact-SQL創(chuàng)建教學數(shù)據庫中的三張表。創(chuàng)建教學數(shù)據庫中的三張表。CREATE TABLE student( SNO CHAR(4) PRIMARY KEY,SNAME NCHAR(10) NOT NULL,SEX CHAR(1),AGE SMALLINT,CHECK (SEX=F OR SEX=M

8、),CHECK (AGE BETWEEN 18 AND 25)CREATE TABLE course( CNO CHAR(4),CNAME CHAR(10) NOT NULL,CREDIT SMALLINT,PRIMARY KEY (CNO),CHECK (CREDIT 1 AND 10)996.1 數(shù)據表的建立數(shù)據表的建立CREATE TABLE s_c( SNO CHAR(4),CNO CHAR(4),GRADE SMALLINT,PRIMARY KEY (SNO,CNO),F(xiàn)OREIGN KEY SNO REFERENCES student(SNO),F(xiàn)OREIGN KEY CNO RE

9、FERENCES course(CNO),CHECK (GRADE 0 AND 100)10106.2 數(shù)據表的修改數(shù)據表的修改n 查看數(shù)據表查看數(shù)據表【例【例6.2】查看系統(tǒng)當前所有對象的信息?!坎榭聪到y(tǒng)當前所有對象的信息。單擊工具欄上【新建查詢】按鈕,輸入以下代碼:單擊工具欄上【新建查詢】按鈕,輸入以下代碼:USE masterGOEXEC sp_helpGO【例【例6.3】查看教學數(shù)據庫中學生表的信息。】查看教學數(shù)據庫中學生表的信息。USE teachingGOEXEC sp_help studentGO11116.2 數(shù)據表的修改數(shù)據表的修改n使用圖形工具修改數(shù)據表使用圖形工具修改數(shù)據

10、表n使用使用Transact-SQL語句修改表語句修改表語法格式:語法格式:ALTER TABLE database_name . schema_name . | schema_name . table_name ALTER COLUMN column_name type_schema_name. type_name ( precision , scale | max ) NULL | NOT NULL | WITH CHECK | NOCHECK | ADD | ,.n | DROP CONSTRAINT constraint_name | COLUMN column_name ,.n ;

11、12126.2 數(shù)據表的修改數(shù)據表的修改【例【例6.4】為教學數(shù)據庫中的表】為教學數(shù)據庫中的表student添加一個允許空值添加一個允許空值的列的列PLACE,而且沒有通過,而且沒有通過DEFAULT定義提供的值。在該定義提供的值。在該新列中,每一行都將有新列中,每一行都將有NULL值。值。USE teachingGOALTER TABLE student ADD PLACE VARCHAR(20) NULLGOEXEC sp_help studentGO13136.2 數(shù)據表的修改數(shù)據表的修改【例【例6.5】修改表】修改表student以刪除列以刪除列PLACE。USE teachingGO

12、ALTER TABLE student DROP COLUMN PLACEGOEXEC sp_help student GO14146.2 數(shù)據表的修改數(shù)據表的修改【例【例6.6】將表】將表student中列中列PLACE的數(shù)據類型由的數(shù)據類型由VARCHAR(20)更改為更改為VARCHAR(10)。USE teachingGOALTER TABLE student ALTER COLUMN PLACE VARCHAR(10)GOEXEC sp_help studentGO15156.2 數(shù)據表的修改數(shù)據表的修改【例【例6.7】為表】為表student添加一個包含添加一個包含UNIQUE約束

13、的新列約束的新列SCARDID。USE teachingGOALTER TABLE student ADD SCARDID CHAR(18) NULLCONSTRAINT my_constraint UNIQUEGOEXEC sp_help studentGO16166.2 數(shù)據表的修改數(shù)據表的修改【例【例6.8】從表】從表student中刪除中刪除UNIQUE約束。約束。USE teachingGO ALTER TABLE student DROP CONSTRAINT my_constraint GO EXEC sp_help studentGO17176.2 數(shù)據表的修改數(shù)據表的修改n

14、使用圖形工具刪除數(shù)據表使用圖形工具刪除數(shù)據表n 使用使用Transact-SQL語句刪除表語句刪除表語法格式如下:語法格式如下:DROP TABLE database_name . schema_name . | schema_name . table_name ,.n ; 其中,其中,table_name是要刪除的表名。是要刪除的表名。注意:注意:(1) 定義有外鍵約束的表必須先刪除外鍵約束,才能刪除。定義有外鍵約束的表必須先刪除外鍵約束,才能刪除。(2) 系統(tǒng)表不能使用系統(tǒng)表不能使用DROP TABLE語句刪除。語句刪除。18186.2 數(shù)據表的修改數(shù)據表的修改【例【例6.9】從當前數(shù)據庫

15、中刪除】從當前數(shù)據庫中刪除test1表及其數(shù)據和索引。表及其數(shù)據和索引。DROP TABLE test1【例【例6.10】刪除】刪除teaching數(shù)據庫中的數(shù)據庫中的test2表。表。DROP TABLE teaching.dbo.test21919本章小結本章小結(1)表的相關概念:表是數(shù)據庫中數(shù)據的實際存儲處所,每個表代)表的相關概念:表是數(shù)據庫中數(shù)據的實際存儲處所,每個表代表一個實體。表由行和列組成,每行標識實體的一個個體,每列代表實表一個實體。表由行和列組成,每行標識實體的一個個體,每列代表實體的一個屬性。體的一個屬性。(2)數(shù)據類型:數(shù)據類型描述并約束了列中所能包含的數(shù)據的種類、)數(shù)據類型:數(shù)據類型描述并約束了列中所能包含的數(shù)據的種類、所存儲值的長度或大小、數(shù)字精度和小數(shù)位數(shù)(對數(shù)值數(shù)據類型)。所存儲值的長度或大小、數(shù)字精度和小數(shù)位數(shù)(對數(shù)值數(shù)據類型)。(3)空值:未對列指定值時,該列將出現(xiàn)空值??罩挡煌诳兆址┛罩担何磳α兄付ㄖ禃r,該列將出現(xiàn)空值??罩挡煌诳兆址驍?shù)值零,通常表示未知。空值會對查詢命令或統(tǒng)計函數(shù)產生影響,串或數(shù)值零,通常表示未知??罩禃Σ樵兠罨蚪y(tǒng)計函數(shù)產生影響,應盡量少使用空值。應盡量少使用空值。(4)約束:約束是數(shù)據庫自動保持數(shù)據完整性的機

溫馨提示

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

評論

0/150

提交評論