數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用教程.ppt
SQL2008數(shù)據(jù)庫(kù)管理系統(tǒng),SQL語言,2,結(jié)構(gòu)化查詢語言StructuredQueryLanguage,數(shù)據(jù)查詢DQ數(shù)據(jù)定義DDL數(shù)據(jù)操縱DML數(shù)據(jù)控制DCL,SQL語言的基本概念與特點(diǎn),SQL語言的發(fā)展及標(biāo)準(zhǔn)化SQL語言的發(fā)展,3,Chamberlin,SEQUEL,SQL,大型數(shù)據(jù)庫(kù)SybaseINFORMIXSQLServerOracleDB2MySQL-小型數(shù)據(jù)庫(kù)FoxProAccess,結(jié)構(gòu)化英語查詢語言(StructuredEnglishQueryLanguage),SQL語言包含4個(gè)部分,數(shù)據(jù)定義語言(DDL)例如:CREATE、DROP、ALTER等語句。數(shù)據(jù)操作語言(DML)例如:INSERT、UPDATE、DELETE語句。數(shù)據(jù)查詢語言例如:SELECT語句。數(shù)據(jù)控制語言例如:GRANT、REVOKE、COMMIT、ROLLBACK等語句。,SQL語言的主要特點(diǎn),SQL語言是類似于英語的自然語言,簡(jiǎn)潔易用SQL語言是一種非過程語言SQL語言是一種面向集合的語言SQL語言既是自含式語言,又是嵌入式語言SQL語言具有數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制四種功能,5,了解SQLServer2008,6,SQLServer是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),企業(yè)版(EnterpriseEdition)標(biāo)準(zhǔn)版(StandardEdition)個(gè)人版(PersonalEdition)開發(fā)者版(DeveloperEdition),SQLServer2008的主要組件,7,企業(yè)管理器,由SQLServerManagementStudio產(chǎn)生的SQL腳本是一個(gè)后綴名為.sql的文件企業(yè)管理器的管理工作,8,文本文件,管理數(shù)據(jù)庫(kù),管理數(shù)據(jù)庫(kù)對(duì)象,管理備份,管理復(fù)制,管理登錄和許可,管理SQLServerAgent(代理),管理SQLServerMail,SQLServer2008企業(yè)管理器,SQLServer2008企業(yè)管理器,SQLServer2008配置,SQLServer2008配置,查詢分析器,使用查詢分析器的熟練程度是衡量一個(gè)SQLServer用戶水平的標(biāo)準(zhǔn)。,13,創(chuàng)建與使用數(shù)據(jù)庫(kù),14,數(shù)據(jù)文件1,事務(wù)日志文件,數(shù)據(jù)庫(kù),數(shù)據(jù)文件n,存放數(shù)據(jù)庫(kù)數(shù)據(jù)和數(shù)據(jù)庫(kù)對(duì)象的文件主要數(shù)據(jù)文件(.mdf)+次要數(shù)據(jù)文件(.ndf),只有一個(gè),可有多個(gè),記錄數(shù)據(jù)庫(kù)更新情況,擴(kuò)展名為.ldf當(dāng)數(shù)據(jù)庫(kù)破壞時(shí)可以用事務(wù)日志還原數(shù)據(jù)庫(kù)內(nèi)容,SQLServer的系統(tǒng)數(shù)據(jù)庫(kù),15,Model,Msdb,Tempdb,系統(tǒng)默認(rèn)數(shù)據(jù)庫(kù),系統(tǒng)信息:磁盤空間;文件分配和使用;系統(tǒng)級(jí)的配置參數(shù);登錄賬號(hào)信息;SQLServer初始化信息;系統(tǒng)中其他系統(tǒng)數(shù)據(jù)庫(kù)和用戶數(shù)據(jù)庫(kù)的相關(guān)信息,Model數(shù)據(jù)庫(kù)存儲(chǔ)了所有用戶數(shù)據(jù)庫(kù)和Tempdb數(shù)據(jù)庫(kù)的創(chuàng)建模板通過更改Model數(shù)據(jù)庫(kù)的設(shè)置可以大大簡(jiǎn)化數(shù)據(jù)庫(kù)及其對(duì)象的創(chuàng)建設(shè)置工作,存儲(chǔ)計(jì)劃信息以及與備份和還原相關(guān)的信息,Tempdb數(shù)據(jù)庫(kù)用作系統(tǒng)的臨時(shí)存儲(chǔ)空間存儲(chǔ)臨時(shí)表,臨時(shí)存儲(chǔ)過程和全局變量值,創(chuàng)建臨時(shí)表,存儲(chǔ)用戶利用游標(biāo)說明所篩選出來的數(shù)據(jù),Master,SQLServer的實(shí)例數(shù)據(jù)庫(kù),重建實(shí)例數(shù)據(jù)庫(kù)安裝目錄MSSQLInstall中:Instpubs.sqlInstnwnd.sql,16,實(shí)例數(shù)據(jù)庫(kù),pubs,Northwind,虛構(gòu)的圖書出版公司的基本情況,包含了一個(gè)公司的銷售數(shù)據(jù),創(chuàng)建用戶數(shù)據(jù)庫(kù),創(chuàng)建數(shù)據(jù)庫(kù),創(chuàng)建用戶數(shù)據(jù)庫(kù),創(chuàng)建用戶數(shù)據(jù)庫(kù),創(chuàng)建用戶數(shù)據(jù)庫(kù),除了用EnterpriseManager創(chuàng)建數(shù)據(jù)庫(kù)外還可以用SQL命令創(chuàng)建數(shù)據(jù)庫(kù)CREATEDATABASEdatabase_nameON,.n,.nLOGON,.nCOLLATEcollation_nameFORLOAD|FORATTACH,20,例3-1用SQL命令創(chuàng)建一個(gè)教學(xué)數(shù)據(jù)庫(kù)Teach,數(shù)據(jù)文件的邏輯名稱為Teach_Data,數(shù)據(jù)文件物理地存放在D:盤的根目錄下,文件名為TeachData.mdf,數(shù)據(jù)文件的初始存儲(chǔ)空間大小為10MB,最大存儲(chǔ)空間為50MB,存儲(chǔ)空間自動(dòng)增長(zhǎng)量為5MB;日志文件的邏輯名稱為Teach_Log,日志文件物理地存放在D:盤的根目錄下,文件名為TeachLog.ldf,初始存儲(chǔ)空間大小為10MB,最大存儲(chǔ)空間為25MB,存儲(chǔ)空間自動(dòng)增長(zhǎng)量為5MB。,21,CREATEDATABASETeachON(NAME=Teach_Data,FILENAME=D:TeachData.mdf,SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME=Teach_Log,FILENAME=D:TeachLog.ldf,SIZE=5,MAXSIZE=25,FILEGROWTH=5),修改用戶數(shù)據(jù)庫(kù),用EnterpriseManager修改數(shù)據(jù)庫(kù)用SQL命令修改數(shù)據(jù)庫(kù)ALTERDATABASEdatabase_nameADDFILE,.nTOFILEGROUPfilegroup_name|ADDLOGFILE,.n|REMOVEFILElogical_file_nameWITHDELETE|ADDFILEGROUPfilegroup_name|REMOVEFILEGROUPfilegroup_name|MODIFYFILE|MODIFYNAME=new_dbname|MODIFYFILEGROUPfilegroup_namefilegroup_property|NAME=new_filegroup_name|SET,.nWITH|COLLATE,22,例3-2修改Northwind數(shù)據(jù)庫(kù)中的Northwind文件增容方式為一次增加2MB。,23,ALTERDATABASENorthwindMODIFYFILE(NAME=Northwind,FILEGROWTH=2mb),刪除用戶數(shù)據(jù)庫(kù),用EnterpriseManager刪除數(shù)據(jù)庫(kù)用SQL命令刪除數(shù)據(jù)庫(kù)DROPDATABASEdatabase_name,.n例3-3刪除數(shù)據(jù)庫(kù)Teach。DROPDATABASETeach,24,創(chuàng)建數(shù)據(jù)庫(kù)登錄用戶,創(chuàng)建用戶(常規(guī)/角色),創(chuàng)建用戶(數(shù)據(jù)庫(kù)訪問),聯(lián)系,安裝SQLServer2008利用企業(yè)管理器創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)(Teacher)為Teacher數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)連接用戶,