數據庫的創(chuàng)建課件_第1頁
數據庫的創(chuàng)建課件_第2頁
數據庫的創(chuàng)建課件_第3頁
數據庫的創(chuàng)建課件_第4頁
數據庫的創(chuàng)建課件_第5頁
已閱讀5頁,還剩115頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第四章數據庫和數據表的創(chuàng)建管理第四章數據庫和數據表的創(chuàng)建管理1數據庫是數據的集合;數據庫表是同類實體的集合;數據庫包括數據庫表和其他的數據對象。4.1數據庫和數據庫表數據庫數據庫表……數據庫是數據的集合;4.1數據庫和數據庫表數據庫數據庫表……2數據庫系統和數據庫管理系統數據庫系統是可運行、可維護的軟件系統數據庫系統包含數據庫管理系統在內用戶(包括數據庫管理員)應用程序數據庫管理系統操作系統硬件數據庫系統和數據庫管理系統數據庫系統是可運行、可維護的軟件系3DBMS的發(fā)展史萌芽階段——文件系統數據庫初級階段——第一代數據庫中級階段——第二代數據庫高級階段——新一代數據庫DBMS的發(fā)展史萌芽階段——文件系統數據庫4文件系統數據庫50~60年代利用文件系統和操作系統簡單、方便、低效率文件系統數據庫50~60年代5第一代數據庫60、70年代網狀數據庫層次數據庫IBM公司的IMS層次結構數據庫系統第一代數據庫60、70年代6第二代數據庫70、80年代關系模型數據庫小型的:dBase、FoxPro、Paradox中型的:SQLServer6.5大型的:DB2、ORACLE第二代數據庫70、80年代7關系數據模型用戶接口簡潔、方便、直觀底層數據結構簡單清晰查詢和處理效率比較低數據表數據表數據表核心服務用戶用戶用戶關系數據模型用戶接口簡潔、方便、直觀數據表數據表數據表核心服8當今常用的數據庫簡介Microsoft公司的SQLServerOracle公司的ORACLEIBM公司的DB2當今常用的數據庫簡介Microsoft公司的SQLServ94.2SQLServer的發(fā)展史1988年第一次出現SQLServer名稱。微軟、Sybase和Ashton-Tate合作,在Sybase的基礎上生產出了在OS/2操作系統上使用的SQLServer1.0。1989年--SQLServer1.0面世,取得了較大的成功,微軟和Ashton-Tate分道揚鑣。4.2SQLServer的發(fā)展史1988年第一次10SQLServer的發(fā)展史1991年SQLServer1.11版發(fā)布。1992年微軟和Sybase共同開發(fā)的SQLServer4.2面世。1993年微軟推出WindowsNT3.1,搶占服務器操作系統市場并取得了巨大的成功,同期推出的SQLServerforWindowsNT3.1也成為暢銷產品。1994年微軟和Sybase分道揚鑣。SQLServer的發(fā)展史1991年SQLServ11SQLServer的發(fā)展史2019年SQLServer6.0發(fā)布。隨后推出的SQLServer6.5取得巨大成功。2019年SQLServer7.0發(fā)布,SQLServer7.0開始進軍企業(yè)級數據庫市場。SQLServer的發(fā)展史2019年SQLServ12SQLServer的發(fā)展史2000年,SQLServer2000企業(yè)級數據庫系統,其包含了三個組件(DB,OLAP,EnglishQuery)。豐富前端工具,完善開發(fā)工具,以及對XML的支持等,促進了該版本的推廣和應用。2019年,SQLServer2019最新版本,歷時5年的重大變革。2019年,SQLServer2019(Katmi)發(fā)布。SQLServer的發(fā)展史2000年,SQLServer13SQLserver版本體系1、企業(yè)版(EnterpriseEdition)2、標準版(StandardEdition)3、開發(fā)版(DeveloperEdition)4、工作組版(WorkgroupEdition)5、網絡版(WebEdition)6、移動版(Compact)7、免費版(Express)SQLserver版本體系1、企業(yè)版(Enterprise14第四章數據庫的創(chuàng)建課件15SQLServerManagementStudio1、啟動2、對象資源管理器是服務器中所有數據庫對象的樹視圖。包括:數據庫引擎;AnalysisService;IntegrationService和SQLServerCompact的數據庫。3、模板資源管理器SQLServerManagementStudio1、164.3數據庫概述SQLServer數據庫分類SQLServer數據庫構成創(chuàng)建數據庫時的屬性4.3數據庫概述SQLServer數據庫分類17數據庫概述SQLServer支持在一臺服務器上創(chuàng)建多個數據庫。每個數據庫可以存儲與某個應用相關的數據。例如,銀行貸款數據庫;人事管理數據庫。數據庫概述SQLServer支持在一臺服務器上創(chuàng)建多個數據181.SQLServer數據庫分類SQLServer數據庫分類系統數據庫:是SQLServer數據庫管理系統自動維護的,這些數據庫用于存放維護系統正常運行的信息,如服務器上共建有多少個數據庫,每個數據庫的屬性以及包含的對象等。用戶數據庫:存放與業(yè)務有關的數據,數據由用戶來維護。1.SQLServer數據庫分類SQLServer數191.SQLServer數據庫分類SQLServer數據庫分類系統數據庫Master、model、msdb、tempdb用戶數據庫系統提供的:Pubs、Northwind用戶自己創(chuàng)建的1.SQLServer數據庫分類SQLServer數20數據庫數據庫212.SQLServer數據庫構成Extent

(8contiguous8-KBpages)Page(8KB)Tables,IndexesDataDatabaseData(file)

.mdfor.ndfLog(file)

.ldfMaximumrowsize=8060bytes2.SQLServer數據庫構成Extent

(8co221、SQLServer數據庫文件SQLServer的數據庫由兩類文件構成:(1)數據文件:用于存放數據庫數據。分為主要數據文件和次要數據文件。主要數據文件:每個數據庫都包含一個主要數據文件,內涵數據庫的啟動信息,也可用于存儲數據,擴展名mdf.次要數據文件:含有不能放入主要數據文件的數據。擴展名:ndf1、SQLServer數據庫文件SQLServer的數據23SQLServer數據庫文件2、日志文件用于記錄頁的分配和釋放以及對數據庫數據的修改操作,包含用于恢復數據庫的日志信息。擴展名.ldf每個數據庫至少有一個日志文件。數據庫的邏輯名稱和物理名稱的區(qū)別。SQLServer數據庫文件2、日志文件24SQLServer文件組類似于文件夾,用于管理數據庫中的數據文件。日志文件沒有文件組的概念。SQLServer文件組可以分為兩種類型主要文件組用戶定義文件組SQLServer文件組類似于文件夾,用于管理數據庫中的25頁和區(qū)1、頁Page數據文件存儲的基本單位頁(Page)。每頁是一塊8K的連續(xù)磁盤空間。1M=128頁2、區(qū)8個物理上連續(xù)的頁的集合稱為區(qū),用來有效的管理頁。所有頁都存儲在區(qū)中,即1M的數據庫文件包含16個區(qū)。頁和區(qū)1、頁Page263.創(chuàng)建數據庫時指定的屬性數據庫名邏輯文件名物理存儲位置初始大小增長方式最大大小3.創(chuàng)建數據庫時指定的屬性數據庫名27創(chuàng)建數據庫1.使用SqlServerManagementStudio2.使用T-SQL語言創(chuàng)建數據庫創(chuàng)建數據庫1.使用SqlServerManageme28刪除數據庫使用企業(yè)管理器使用語句:DROPDATABASE數據庫名[,…]刪除數據庫使用企業(yè)管理器29分離和附加數據庫分離數據庫附加數據庫分離和附加數據庫分離數據庫304.2數據表的創(chuàng)建和管理SQL語句基本概念T-SQL是微軟在SQLServer中使用的語言,它是一個數據定義、操作和控制語言。SQL是StructuredQueryLanguage(結構化查詢語言)的縮寫SQL已經成為關系數據庫的標準數據語言,所以現在所有的關系數據庫管理系統都支持SQL4.2數據表的創(chuàng)建和管理SQL語句基本概念31SQL語言介紹什么是SQL語言STRUCTURE結構化SQL利用結構化的語句(STATEMENT)和子句(CLAUSE)來使用和管理數據庫。如“SELECT”語句,“FROM”子句;SQL語言介紹什么是SQL語言32SQL語言介紹QUERY查詢SQL主要用來查詢數據庫信息。廣義的查詢還包括創(chuàng)建數據庫、給用戶指派權限等功能;LANGUAGE語言

SQL是在對應的服務器提供的解釋或編譯環(huán)境下運行的,因此不能脫離運行環(huán)境獨立運行。例如,操作SQLServer數據庫的T-SQL語言就不能脫離SQLSERVER環(huán)境運行。SQL語言介紹QUERY查詢33SQL語言的分類(1)DDL(DataDefinitionLanguage):數據定義語言,用于定義和管理SQL數據庫中的所有對象的語言;(2)DML(DataManipulationLanguage):數據操縱語言,SQL中處理數據(包括數據的增加INSERT、刪除DELETE、修改UPDATE、查詢SELECT)等操作統稱為數據操縱語言;SQL語言的分類(1)DDL(DataDefinition34SQL語言的分類(3)DCL(DataControlLanguage):數據控制語言,主要實現對用戶權限的分配等處理。(4)事務管理語言:用于管理事務。包括:BeginTransaction(開始事務);CommitTransaction(提交事務);RollBackTransaction(撤銷事務)。(5)其他附加語言元素。編程基礎。SQL語言的分類(3)DCL(DataControlLa354.2.2T-SQL數據類型1、系統數據類型字符串型;日期、時間型;.貨幣類型2、用戶定義數據類型4.2.2T-SQL數據類型1、系統數據類型361.數值型數字數據類型:包括正數、負數、分數、小數和整數;數字數據類型分為:整型數和非整型數字。非整型數字又分為精確數字類型和近似數字類型。近似型:用于表示浮點型數值的近似數據類型。1.數值型數字數據類型:包括正數、負數、分數、小數和整數;371.數值型定長(準確表達)整數Bigint:8字節(jié),Int:4字節(jié)Smallint:2字節(jié),Tinyint:1字節(jié)小數 Numeric(p,q)或Decimal(p,q), 其中:p為數字位長度,q:小數位長度。1.數值型定長(準確表達)38數值型浮點(近似)數: Float:8字節(jié)Real:4字節(jié)數值型浮點(近似)數:39貨幣數據類型可以使用Money和Smallmoney兩種數據類型存儲貨幣類型數據或貨幣值,這些數據類型可以使用常用的貨幣符號。¥$等。Money8字節(jié)Smallmoney4字節(jié)貨幣數據類型可以使用Money和Smallmoney兩種數據40日期和時間數據類型日期和時間數據類型包括datetime、datetime2、date、datetimeoffset、smalldatetime和time。常量使用特定格式的字符日期值表示,并用單引號括起來。日期和時間數據類型日期和時間數據類型包括datetime、d41字符串型字符串是由漢字、英文字母、數字和各種符號組成。用單引號括起來。普通編碼字符串類型統一字符編碼字符串類型二進制字符串類型字符串型字符串是由漢字、英文字母、數字和各種符42普通編碼字符串類型Char(n):定長存儲,n<=8000Varchar(n):不定長存儲(按實際長度存儲),長度最大不超過n,n<=8000注:n為字符個數Text:存儲大于8000字節(jié)的文本普通編碼字符串類型Char(n):定長存儲,n<=800043統一字符編碼字符串類型nchar(n):定長存儲,n<=4000nvarchar(n):不定長存儲,長度最大不超過n,n<=4000ntext:存儲大于8000字節(jié)的文本特點:每個字符占兩個字節(jié)統一字符編碼字符串類型nchar(n):定長存儲,n<=40443.日期時間型Datetime:8字節(jié),年月日時分秒毫秒 (例:‘2019/08/0310:30:00.000’)

SmallDateTime:4字節(jié),年月日時分(例:‘2019/08/0310:30:00’)日期、時間的輸入格式3.日期時間型Datetime:8字節(jié),年月日時分秒毫秒454.貨幣類型表示正的或負的貨幣值Money:精確到貨幣單位的千分之十。存儲大小為8個字節(jié)。Smallmoney:精確到貨幣單位的千分之十。存儲大小為4個字節(jié)。限制到小數點后4位。貨幣類型的數值可以帶有適當的貨幣符號。例如,若要指定100英鎊,使用£100。4.貨幣類型表示正的或負的貨幣值464.3創(chuàng)建表表是數據庫中非常重要的對象,用于存儲用戶的數據。SQLServer2000中,每個數據庫中最多可以創(chuàng)建200萬個表,用戶創(chuàng)建數據庫表時,最多可以定義1024列,也就是可以定義1024個字段。4.3創(chuàng)建表表是數據庫中非常重要的對象,用于存儲用戶的數據47CREATETABLE<表名>(列定義|約束定義)(1)表名:表達本表應用語義的字串。(2)列定義(單列定義序列):單列定義[,單列定義,…]單列定義由列名、列類型(尺寸)、列約束,組成(用空格分隔)

用語句創(chuàng)建表CREATETABLE<表名>(列定義|約束定48列定義各項含義①列名:表達本列屬性語義的字串。(必須填寫)②類型尺寸:本列數據存儲規(guī)格。(必須填寫)③約束關鍵字:UNIQUE:指明本列數據值不重NOTNULL:指明本列數據值非空PRIMARYKEY:指明本列為主碼(單列主碼)[FOREIGNKEY(外碼列名)REFERENCES主表名(列名):指明本列為外碼列定義各項含義①列名:表達本列屬性語義的字串。(必須填寫)49約束定義

①列取值非空約束<列名><類型>NOTNULL 例:snamechar(10)NOTNULL約束定義①列取值非空約束50②表主碼約束

在定義列時定義主碼(僅用于單列主碼)列定義PRIMARYKEY例:SNOchar(7)PRIMARYKEY,在定義完列時定義主碼(用于單列或多列主碼)PRIMARYKEY(<列名序列>) 例:PRIMARYKEY(SNO)PRIMARYKEY(SNO,CNO)②表主碼約束在定義列時定義主碼(僅用于單列主碼)51③外碼引用約束指明本表外碼列引用的表及表中的主碼列。

[FOREIGNKEY(<本表列名>)]REFERENCES<外表名>(<外表主碼列名>)例:FOREIGNKEY(sno)REFERENCES學生表(sno) ③外碼引用約束指明本表外碼列引用的表及表中的主碼列。[FO52學生表(學號,姓名,性別,年齡、所在系)CREATETABLE

Student(

SnoCHAR(10)PRIMARYKEY,SnameCHAR(10),SsexCHAR(2)NOTNULL,SageTINYINT,SdeptCHAR(20))sql語句創(chuàng)建表學生表(學號,姓名,性別,年齡、所在系)CREATETA53課程表(課程號,課程名,學分,學期)CREATETABLECourse(CnoCHAR(6)NOTNULL,CnameCHAR(20)NOTNULL,CreditTINYINTNOTNULL,--學分SemesterCHAR(2),--學期 PRIMARYKEY(CNO))sql語句創(chuàng)建表課程表(課程號,課程名,學分,學期)CREATETABL54學生修課表(學號,課程號,成績,修課類別)CREATETABLE

SC(Sno CHAR(10)NOTNULL, Cno CHAR(6) NOTNULL, GradeTINYINT,XKLBCHAR(4),

PRIMARYKEY(SNO,CNO),

FOREIGNKEY(SNO)REFERENCESStudent(Sno),

FOREIGNKEY(CNO)REFERENCESCourse(Cno))sql語句創(chuàng)建表學生修課表(學號,課程號,成績,修課類別)CREATETA554.4管理表包括增加、刪除和修改列定義實現手段使用企業(yè)管理器使用SQL語句4.4管理表包括增加、刪除和修改列定義56ALTERTABLE<表名>

ADD

<列名類型>|

DROPCOLUMN列名|

ALTERCOLUMN

<列名新類型>修改表結構語句

ALTERTABLE<表名>修改表結構語句57修改表結構例例2:將學生姓名改為20個字符長。例1.給學生表添加“專業(yè)”列。ALTERTABLESTUDENTALTERCOLUMNSNAMEchar(20)ALTERTABLESTUDENTADDSPECchar(20)修改表結構例例2:將學生姓名改為20個字符長。例1.給學58刪除表刪除表:刪除表內數據及表的定義格式:DROPTABLE<表名>[,…]例:DROPTABLEStudent刪除表刪除表:刪除表內數據及表的定義59xiexie!謝謝!xiexie!謝謝!60第四章數據庫和數據表的創(chuàng)建管理第四章數據庫和數據表的創(chuàng)建管理61數據庫是數據的集合;數據庫表是同類實體的集合;數據庫包括數據庫表和其他的數據對象。4.1數據庫和數據庫表數據庫數據庫表……數據庫是數據的集合;4.1數據庫和數據庫表數據庫數據庫表……62數據庫系統和數據庫管理系統數據庫系統是可運行、可維護的軟件系統數據庫系統包含數據庫管理系統在內用戶(包括數據庫管理員)應用程序數據庫管理系統操作系統硬件數據庫系統和數據庫管理系統數據庫系統是可運行、可維護的軟件系63DBMS的發(fā)展史萌芽階段——文件系統數據庫初級階段——第一代數據庫中級階段——第二代數據庫高級階段——新一代數據庫DBMS的發(fā)展史萌芽階段——文件系統數據庫64文件系統數據庫50~60年代利用文件系統和操作系統簡單、方便、低效率文件系統數據庫50~60年代65第一代數據庫60、70年代網狀數據庫層次數據庫IBM公司的IMS層次結構數據庫系統第一代數據庫60、70年代66第二代數據庫70、80年代關系模型數據庫小型的:dBase、FoxPro、Paradox中型的:SQLServer6.5大型的:DB2、ORACLE第二代數據庫70、80年代67關系數據模型用戶接口簡潔、方便、直觀底層數據結構簡單清晰查詢和處理效率比較低數據表數據表數據表核心服務用戶用戶用戶關系數據模型用戶接口簡潔、方便、直觀數據表數據表數據表核心服68當今常用的數據庫簡介Microsoft公司的SQLServerOracle公司的ORACLEIBM公司的DB2當今常用的數據庫簡介Microsoft公司的SQLServ694.2SQLServer的發(fā)展史1988年第一次出現SQLServer名稱。微軟、Sybase和Ashton-Tate合作,在Sybase的基礎上生產出了在OS/2操作系統上使用的SQLServer1.0。1989年--SQLServer1.0面世,取得了較大的成功,微軟和Ashton-Tate分道揚鑣。4.2SQLServer的發(fā)展史1988年第一次70SQLServer的發(fā)展史1991年SQLServer1.11版發(fā)布。1992年微軟和Sybase共同開發(fā)的SQLServer4.2面世。1993年微軟推出WindowsNT3.1,搶占服務器操作系統市場并取得了巨大的成功,同期推出的SQLServerforWindowsNT3.1也成為暢銷產品。1994年微軟和Sybase分道揚鑣。SQLServer的發(fā)展史1991年SQLServ71SQLServer的發(fā)展史2019年SQLServer6.0發(fā)布。隨后推出的SQLServer6.5取得巨大成功。2019年SQLServer7.0發(fā)布,SQLServer7.0開始進軍企業(yè)級數據庫市場。SQLServer的發(fā)展史2019年SQLServ72SQLServer的發(fā)展史2000年,SQLServer2000企業(yè)級數據庫系統,其包含了三個組件(DB,OLAP,EnglishQuery)。豐富前端工具,完善開發(fā)工具,以及對XML的支持等,促進了該版本的推廣和應用。2019年,SQLServer2019最新版本,歷時5年的重大變革。2019年,SQLServer2019(Katmi)發(fā)布。SQLServer的發(fā)展史2000年,SQLServer73SQLserver版本體系1、企業(yè)版(EnterpriseEdition)2、標準版(StandardEdition)3、開發(fā)版(DeveloperEdition)4、工作組版(WorkgroupEdition)5、網絡版(WebEdition)6、移動版(Compact)7、免費版(Express)SQLserver版本體系1、企業(yè)版(Enterprise74第四章數據庫的創(chuàng)建課件75SQLServerManagementStudio1、啟動2、對象資源管理器是服務器中所有數據庫對象的樹視圖。包括:數據庫引擎;AnalysisService;IntegrationService和SQLServerCompact的數據庫。3、模板資源管理器SQLServerManagementStudio1、764.3數據庫概述SQLServer數據庫分類SQLServer數據庫構成創(chuàng)建數據庫時的屬性4.3數據庫概述SQLServer數據庫分類77數據庫概述SQLServer支持在一臺服務器上創(chuàng)建多個數據庫。每個數據庫可以存儲與某個應用相關的數據。例如,銀行貸款數據庫;人事管理數據庫。數據庫概述SQLServer支持在一臺服務器上創(chuàng)建多個數據781.SQLServer數據庫分類SQLServer數據庫分類系統數據庫:是SQLServer數據庫管理系統自動維護的,這些數據庫用于存放維護系統正常運行的信息,如服務器上共建有多少個數據庫,每個數據庫的屬性以及包含的對象等。用戶數據庫:存放與業(yè)務有關的數據,數據由用戶來維護。1.SQLServer數據庫分類SQLServer數791.SQLServer數據庫分類SQLServer數據庫分類系統數據庫Master、model、msdb、tempdb用戶數據庫系統提供的:Pubs、Northwind用戶自己創(chuàng)建的1.SQLServer數據庫分類SQLServer數80數據庫數據庫812.SQLServer數據庫構成Extent

(8contiguous8-KBpages)Page(8KB)Tables,IndexesDataDatabaseData(file)

.mdfor.ndfLog(file)

.ldfMaximumrowsize=8060bytes2.SQLServer數據庫構成Extent

(8co821、SQLServer數據庫文件SQLServer的數據庫由兩類文件構成:(1)數據文件:用于存放數據庫數據。分為主要數據文件和次要數據文件。主要數據文件:每個數據庫都包含一個主要數據文件,內涵數據庫的啟動信息,也可用于存儲數據,擴展名mdf.次要數據文件:含有不能放入主要數據文件的數據。擴展名:ndf1、SQLServer數據庫文件SQLServer的數據83SQLServer數據庫文件2、日志文件用于記錄頁的分配和釋放以及對數據庫數據的修改操作,包含用于恢復數據庫的日志信息。擴展名.ldf每個數據庫至少有一個日志文件。數據庫的邏輯名稱和物理名稱的區(qū)別。SQLServer數據庫文件2、日志文件84SQLServer文件組類似于文件夾,用于管理數據庫中的數據文件。日志文件沒有文件組的概念。SQLServer文件組可以分為兩種類型主要文件組用戶定義文件組SQLServer文件組類似于文件夾,用于管理數據庫中的85頁和區(qū)1、頁Page數據文件存儲的基本單位頁(Page)。每頁是一塊8K的連續(xù)磁盤空間。1M=128頁2、區(qū)8個物理上連續(xù)的頁的集合稱為區(qū),用來有效的管理頁。所有頁都存儲在區(qū)中,即1M的數據庫文件包含16個區(qū)。頁和區(qū)1、頁Page863.創(chuàng)建數據庫時指定的屬性數據庫名邏輯文件名物理存儲位置初始大小增長方式最大大小3.創(chuàng)建數據庫時指定的屬性數據庫名87創(chuàng)建數據庫1.使用SqlServerManagementStudio2.使用T-SQL語言創(chuàng)建數據庫創(chuàng)建數據庫1.使用SqlServerManageme88刪除數據庫使用企業(yè)管理器使用語句:DROPDATABASE數據庫名[,…]刪除數據庫使用企業(yè)管理器89分離和附加數據庫分離數據庫附加數據庫分離和附加數據庫分離數據庫904.2數據表的創(chuàng)建和管理SQL語句基本概念T-SQL是微軟在SQLServer中使用的語言,它是一個數據定義、操作和控制語言。SQL是StructuredQueryLanguage(結構化查詢語言)的縮寫SQL已經成為關系數據庫的標準數據語言,所以現在所有的關系數據庫管理系統都支持SQL4.2數據表的創(chuàng)建和管理SQL語句基本概念91SQL語言介紹什么是SQL語言STRUCTURE結構化SQL利用結構化的語句(STATEMENT)和子句(CLAUSE)來使用和管理數據庫。如“SELECT”語句,“FROM”子句;SQL語言介紹什么是SQL語言92SQL語言介紹QUERY查詢SQL主要用來查詢數據庫信息。廣義的查詢還包括創(chuàng)建數據庫、給用戶指派權限等功能;LANGUAGE語言

SQL是在對應的服務器提供的解釋或編譯環(huán)境下運行的,因此不能脫離運行環(huán)境獨立運行。例如,操作SQLServer數據庫的T-SQL語言就不能脫離SQLSERVER環(huán)境運行。SQL語言介紹QUERY查詢93SQL語言的分類(1)DDL(DataDefinitionLanguage):數據定義語言,用于定義和管理SQL數據庫中的所有對象的語言;(2)DML(DataManipulationLanguage):數據操縱語言,SQL中處理數據(包括數據的增加INSERT、刪除DELETE、修改UPDATE、查詢SELECT)等操作統稱為數據操縱語言;SQL語言的分類(1)DDL(DataDefinition94SQL語言的分類(3)DCL(DataControlLanguage):數據控制語言,主要實現對用戶權限的分配等處理。(4)事務管理語言:用于管理事務。包括:BeginTransaction(開始事務);CommitTransaction(提交事務);RollBackTransaction(撤銷事務)。(5)其他附加語言元素。編程基礎。SQL語言的分類(3)DCL(DataControlLa954.2.2T-SQL數據類型1、系統數據類型字符串型;日期、時間型;.貨幣類型2、用戶定義數據類型4.2.2T-SQL數據類型1、系統數據類型961.數值型數字數據類型:包括正數、負數、分數、小數和整數;數字數據類型分為:整型數和非整型數字。非整型數字又分為精確數字類型和近似數字類型。近似型:用于表示浮點型數值的近似數據類型。1.數值型數字數據類型:包括正數、負數、分數、小數和整數;971.數值型定長(準確表達)整數Bigint:8字節(jié),Int:4字節(jié)Smallint:2字節(jié),Tinyint:1字節(jié)小數 Numeric(p,q)或Decimal(p,q), 其中:p為數字位長度,q:小數位長度。1.數值型定長(準確表達)98數值型浮點(近似)數: Float:8字節(jié)Real:4字節(jié)數值型浮點(近似)數:99貨幣數據類型可以使用Money和Smallmoney兩種數據類型存儲貨幣類型數據或貨幣值,這些數據類型可以使用常用的貨幣符號。¥$等。Money8字節(jié)Smallmoney4字節(jié)貨幣數據類型可以使用Money和Smallmoney兩種數據100日期和時間數據類型日期和時間數據類型包括datetime、datetime2、date、datetimeoffset、smalldatetime和time。常量使用特定格式的字符日期值表示,并用單引號括起來。日期和時間數據類型日期和時間數據類型包括datetime、d101字符串型字符串是由漢字、英文字母、數字和各種符號組成。用單引號括起來。普通編碼字符串類型統一字符編碼字符串類型二進制字符串類型字符串型字符串是由漢字、英文字母、數字和各種符102普通編碼字符串類型Char(n):定長存儲,n<=8000Varchar(n):不定長存儲(按實際長度存儲),長度最大不超過n,n<=8000注:n為字符個數Text:存儲大于8000字節(jié)的文本普通編碼字符串類型Char(n):定長存儲,n<=8000103統一字符編碼字符串類型nchar(n):定長存儲,n<=4000nvarchar(n):不定長存儲,長度最大不超過n,n<=4000ntext:存儲大于8000字節(jié)的文本特點:每個字符占兩個字節(jié)統一字符編碼字符串類型nchar(n):定長存儲,n<=401043.日期時間型Datetime:8字節(jié),年月日時分秒毫秒 (例:‘2019/08/0310:30:00.000’)

SmallDateTime:4字節(jié),年月日時分(例:‘2019/08/0310:30:00’)日期、時間的輸入格式3.日期時間型Datetime:8字節(jié),年月日時分秒毫秒1054.貨幣類型表示正的或負的貨幣值Money:精確到貨幣單位的千分之十。存儲大小為8個字節(jié)。Smallmoney:精確到貨幣單位的千分之十。存儲大小為4個字節(jié)。限制到小數點后4位。貨幣類型的數值可以帶有適當的貨幣符號。例如,若要指定100英鎊,使用£100。4.貨幣類型表示正的或負的貨幣值1064.3創(chuàng)建表表是數據庫中非常重要的對象,用于存儲用戶的數據。SQLServer2000中,每個數據庫中最多可以創(chuàng)建200萬個表,用戶創(chuàng)建數據庫表時,最多可以定義1024列,也就是可以定義1024個字段。4.3創(chuàng)建表表是數據庫中非常重要的對象,用于存儲用戶的數據107CREATETABLE<表名>(列定義|約束定義)(1)表名:表達本表應用語義的字串。(2)列定義(單列定義序列):單列定義[,單列定義,…]單列定義由列名、列類型(尺寸)、列約束,組成(用空格分隔)

用語句創(chuàng)建表CREATETABLE<表名>(列定義|約束定108列定義各項含義①列名:表達本列屬性語義的字串。(必須填寫)②類型尺寸:本列數據存儲規(guī)格。(必須填寫)③約束關鍵字:UNIQUE:指明本列數據值不重NOTNULL:指明本列數據值非空PRIMARYKEY:指明本列為主碼(單列主碼)[FOREIGNKEY(外碼列名)REFERENCES主表名(列名):指明本列為外碼列定義各項含義①列名:表達本列屬性語義的字串。(必須填寫)109約束定義

①列取值非空約束<列名><類型>NOTNULL 例:snamechar(10)NOTNULL約束定義①列取值非空約束110②表主碼約束

在定義列時定義主碼(僅用于單列主碼)列定義PRIMARYKEY例:SNO

溫馨提示

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

評論

0/150

提交評論