物流信息系統(tǒng)課程設(shè)計(jì)ppt課件_第1頁(yè)
物流信息系統(tǒng)課程設(shè)計(jì)ppt課件_第2頁(yè)
物流信息系統(tǒng)課程設(shè)計(jì)ppt課件_第3頁(yè)
物流信息系統(tǒng)課程設(shè)計(jì)ppt課件_第4頁(yè)
物流信息系統(tǒng)課程設(shè)計(jì)ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩47頁(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)介

1、SQL SERVERSQL Server1 SQL Server 引見(jiàn)2 SQL Server 安裝 3 SQL Server 運(yùn)用4 SQL Server 開發(fā)1 SQL Server 引見(jiàn)1.1 SQL Server 的開展歷程1.2 SQL Server 的版本 1.3 SQL Server 的特點(diǎn)1.1 SQL Server 的開展歷程C/S體系構(gòu)造的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)RDBMS1988年推出了第一個(gè)OS/2版本 1992年,SQL Server移植到NT上后,Microsoft成為這個(gè)工程的主導(dǎo)者 1994年以后,Microsoft專注于開發(fā)、推行SQL Server的Window

2、s NT版本 1996年,Microsoft公司推出了SQL Server 6.5版本 1998年,推出了SQL Server 7.0版本2000年推出了SQL Server 20001.2 SQL Server 2000 的版本企業(yè)版Enterprise Edition普通作為數(shù)據(jù)庫(kù)效力器運(yùn)用 規(guī)范版Standard Edition普通用于小型的任務(wù)組或部門 個(gè)人版Personal Edition主要適用于挪動(dòng)用戶開發(fā)人員版Developer Edition適用于運(yùn)用程序開發(fā)1.3 SQL Server 2000 的特點(diǎn)真正的客戶機(jī)/效力器體系構(gòu)造圖形化用戶界面豐富的編程接口工具SQL Se

3、rver與Windows操作系統(tǒng)完選集成具有很好的伸縮性對(duì)Web技術(shù)的支持SQL Server提供數(shù)據(jù)倉(cāng)庫(kù)工具 2 SQL Server 安裝2.1 SQL Server 2000的環(huán)境需求2.2 SQL Server 的系統(tǒng)數(shù)據(jù)庫(kù) 2.1 SQL Server 2000 的環(huán)境需求硬件需求 計(jì)算機(jī):Intel及其兼容計(jì)算機(jī),Pentium 166Mz或者更高處置器或DEC Alpha及其兼容系統(tǒng)。內(nèi)存RAM:企業(yè)版最少64MB內(nèi)存,其它版本最少需求32MB內(nèi)存,建議運(yùn)用更多的內(nèi)存。硬盤空間:完全安裝Full需求180MB的空間,典型安裝Typical需求170MB的空間,最小安裝Minimu

4、m需求65MB的空間。 2.1 SQL Server 2000 的環(huán)境需求軟件需求 企業(yè)版(Enterprise Edition)Windows NT Server 4.0 Windows 2000 Server以上規(guī)范版(Standard Edition)Windows NT Server 4.0 Windows 2000 Server以上個(gè)人版(Personal Edition) Windows 98、Windows NT Windows 2000以上開發(fā)版(Developer Edition)Windows NT Windows 2000 以上客戶端工具(Client 工具) Windo

5、ws2.2 SQL Server 2000 的系統(tǒng)數(shù)據(jù)庫(kù)SQL Server 2000系統(tǒng)數(shù)據(jù)庫(kù)安裝勝利,系統(tǒng)自動(dòng)創(chuàng)建6個(gè)系統(tǒng)數(shù)據(jù)庫(kù) 系統(tǒng)數(shù)據(jù)庫(kù)的文件存儲(chǔ)在安裝目錄下的MSSQLData文件夾中,數(shù)據(jù)庫(kù)文件的擴(kuò)展名為 .mdf,數(shù)據(jù)庫(kù)日志文件的擴(kuò)展名為 .ldf 。Master數(shù)據(jù)庫(kù)記錄SQL Server系統(tǒng)的一切系統(tǒng)信息。這些系統(tǒng)信息包括一切的登錄信息、系統(tǒng)設(shè)置信息、SQL Server的初始化信息和其它系統(tǒng)數(shù)據(jù)庫(kù)及用戶數(shù)據(jù)庫(kù)的相關(guān)信息。 Model數(shù)據(jù)庫(kù)是一切用戶數(shù)據(jù)庫(kù)和Tempdb數(shù)據(jù)庫(kù)的模板數(shù)據(jù)庫(kù)。它含有Master數(shù)據(jù)庫(kù)的一切系統(tǒng)表子集,這些系統(tǒng)數(shù)據(jù)庫(kù)是每個(gè)用戶定義數(shù)據(jù)庫(kù)時(shí)都需求的

6、。 2.2 SQL Server 2000 的系統(tǒng)數(shù)據(jù)庫(kù)Msdb數(shù)據(jù)庫(kù)是代理效力數(shù)據(jù)庫(kù)。 Tempdb數(shù)據(jù)庫(kù)是一個(gè)暫時(shí)數(shù)據(jù)庫(kù)。Tempdb數(shù)據(jù)庫(kù)由整個(gè)系統(tǒng)的一切數(shù)據(jù)庫(kù)運(yùn)用。SQL Server每次啟動(dòng)時(shí),tempdb數(shù)據(jù)庫(kù)被重新建立。當(dāng)用戶與SQL Server斷開銜接時(shí),其暫時(shí)表被自動(dòng)刪除。 Pubs和Northwind數(shù)據(jù)庫(kù)是SQL Server自帶的兩個(gè)實(shí)例數(shù)據(jù)庫(kù) 。Northwind數(shù)據(jù)庫(kù)3 SQL Server 運(yùn)用3.1 SQL Server 的系統(tǒng)表3.2 SQL Server 的系統(tǒng)存儲(chǔ)過(guò)程3.3 Transact SQL 言語(yǔ)引見(jiàn)3.4 SQL Server的常用工具3.5

7、SQL Server的平安性管理3.6 SQL Server數(shù)據(jù)庫(kù)的創(chuàng)建和管理3.7 SQL Server數(shù)據(jù)庫(kù)的對(duì)象3.1 SQL Server 2000 的系統(tǒng)表Sysobjects表SQL Server 的主系統(tǒng)表,出如今每個(gè)數(shù)據(jù)庫(kù)中。它對(duì)每個(gè)數(shù)據(jù)庫(kù)對(duì)象含有一行記錄。Syscolumns表出如今master數(shù)據(jù)庫(kù)和每個(gè)用戶自定義的數(shù)據(jù)庫(kù)中,它對(duì)基表或者視圖的每個(gè)列和存儲(chǔ)過(guò)程中的每個(gè)參數(shù)含有一行記錄。Sysindexes表出如今master數(shù)據(jù)庫(kù)和每個(gè)用戶自定義的數(shù)據(jù)庫(kù)中,它對(duì)每個(gè)索引和沒(méi)有聚簇索引的每個(gè)表含有一行記錄,它還對(duì)包括文本/圖像數(shù)據(jù)的每個(gè)表含有一行記錄。3.1 SQL Serv

8、er 2000 的系統(tǒng)表Sysusers表出如今master數(shù)據(jù)庫(kù)和每個(gè)用戶自定義的數(shù)據(jù)庫(kù)中,它對(duì)整個(gè)數(shù)據(jù)庫(kù)中的每個(gè)Windows NT用戶、Windows NT用戶組、SQL Server用戶或者SQL Server角色含有一行記錄。Sysdatabases表對(duì)SQL Server系統(tǒng)上的每個(gè)系統(tǒng)數(shù)據(jù)庫(kù)和用戶自定義的數(shù)據(jù)庫(kù)含有一行記錄,只出如今master數(shù)據(jù)庫(kù)中。Sysdepends表對(duì)表、視圖和存儲(chǔ)過(guò)程之間的每個(gè)依賴關(guān)系含有一行記錄,出如今master數(shù)據(jù)庫(kù)和每個(gè)用戶自定義的數(shù)據(jù)庫(kù)中。3.2 SQL Server 2000 的系統(tǒng)存儲(chǔ)過(guò)程系統(tǒng)存儲(chǔ)過(guò)程是由SQL Server2000系統(tǒng)自

9、動(dòng)創(chuàng)建的存儲(chǔ)過(guò)程 系統(tǒng)存儲(chǔ)過(guò)程創(chuàng)建并存放于系統(tǒng)數(shù)據(jù)庫(kù)master中,并且稱號(hào)以sp_或者xp_開頭??梢詮娜魏螖?shù)據(jù)庫(kù)中執(zhí)行系統(tǒng)存儲(chǔ)過(guò)程。3.3 Transact-SQL言語(yǔ)簡(jiǎn)介構(gòu)造化查詢言語(yǔ)SQLStructured Query LanguageSQL言語(yǔ)是關(guān)系型數(shù)據(jù)庫(kù)環(huán)境下的規(guī)范查詢言語(yǔ)目前,最新的SQL規(guī)范是1992年制定的SQL-92微軟公司在SQL規(guī)范的根底上做了大幅度擴(kuò)展SQL Server運(yùn)用的SQL言語(yǔ)稱為Transact-SQL言語(yǔ) 3.3 Transact-SQL言語(yǔ)簡(jiǎn)介在Transact-SQL言語(yǔ)的命令格式中:用 括起來(lái)的內(nèi)容表示是可選的,n表示反復(fù)前面的內(nèi)容用括起來(lái)表示

10、在實(shí)踐編寫語(yǔ)句時(shí),用相應(yīng)的內(nèi)容替代用 括起來(lái)表示是必選的類似A|B的格式,表示A和B只能選擇一個(gè),不能同時(shí)都選 例如SELECT select_list INTO new_table FROM table_source WHERE search_condition GROUP BY group_by_expression HAVING search_condition ORDER BY order_expression ASC | DESC 3.4 SQL Server 2000 常用工具常用工具為了管理SQL Server 2000的效力器和客戶機(jī),運(yùn)用SQL Server 2000開發(fā)數(shù)據(jù)

11、庫(kù)和運(yùn)用程序,SQL Server 2000提供了一套常用的管理工具和適用程序。主要的管理工具和適用程序如下: 效力管理器企業(yè)管理器查詢分析器效力器網(wǎng)絡(luò)適用工具客戶端網(wǎng)絡(luò)適用工具導(dǎo)入和導(dǎo)出數(shù)據(jù)聯(lián)機(jī)協(xié)助文檔 3.5 SQL Server 2000 的平安性管理SQL Server 2000 登錄身份驗(yàn)證方式SQL Server身份驗(yàn)證Windows身份驗(yàn)證SQL Server 數(shù)據(jù)庫(kù)的平安性 用戶勝利登錄SQL Server效力器后,并不自動(dòng)擁有對(duì)一切數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限。用戶必需在想要訪問(wèn)的數(shù)據(jù)庫(kù)中也有一個(gè)帳戶。當(dāng)需求訪問(wèn)某個(gè)數(shù)據(jù)庫(kù)時(shí),SQL Server的平安系統(tǒng)會(huì)根據(jù)這個(gè)帳戶的權(quán)限決議能否允許

12、用戶訪問(wèn)該數(shù)據(jù)庫(kù)。 3.5 SQL Server 2000 的平安性管理SQL Server 數(shù)據(jù)庫(kù)對(duì)象的平安性 在創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)對(duì)象時(shí),創(chuàng)建者將自動(dòng)擁有對(duì)該數(shù)據(jù)庫(kù)對(duì)象的一切權(quán),即可以完全控制該對(duì)象。當(dāng)一個(gè)非數(shù)據(jù)庫(kù)擁有者想要訪問(wèn)數(shù)據(jù)庫(kù)中的對(duì)象時(shí),必需事先由數(shù)據(jù)庫(kù)擁有者賦予該用戶對(duì)指定對(duì)象的操作權(quán)限。 管理效力器的平安性效力器角色登陸數(shù)據(jù)庫(kù)角色用戶特殊帳戶sa3.6 SQL Server 2000 數(shù)據(jù)庫(kù)的創(chuàng)建和管理數(shù)據(jù)庫(kù)的存儲(chǔ)構(gòu)造數(shù)據(jù)庫(kù)的存儲(chǔ)構(gòu)造分為邏輯存儲(chǔ)構(gòu)造和物理存儲(chǔ)構(gòu)造。 數(shù)據(jù)庫(kù)的邏輯存儲(chǔ)構(gòu)造指的是數(shù)據(jù)庫(kù)是由哪些性質(zhì)的信息所組成 。實(shí)踐上,SQL Server的數(shù)據(jù)庫(kù)是由諸如表、視圖、索

13、引等各種不同的數(shù)據(jù)庫(kù)對(duì)象所組成。數(shù)據(jù)庫(kù)的物理存儲(chǔ)構(gòu)造是指數(shù)據(jù)庫(kù)文件是如何在磁盤上存儲(chǔ)的。 SQL Server的數(shù)據(jù)庫(kù)在磁盤上是以文件為單位存儲(chǔ)的,由數(shù)據(jù)庫(kù)文件和事務(wù)日志文件組成,一個(gè)數(shù)據(jù)庫(kù)至少應(yīng)該包含一個(gè)數(shù)據(jù)庫(kù)文件和一個(gè)事務(wù)日志文件。 3.6 SQL Server 2000 數(shù)據(jù)庫(kù)的創(chuàng)建和管理數(shù)據(jù)庫(kù)的創(chuàng)建創(chuàng)建數(shù)據(jù)庫(kù)需求一定答應(yīng),在默許情況下,只需系統(tǒng)管理員和數(shù)據(jù)庫(kù)擁有者可以創(chuàng)建數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)被創(chuàng)建后,創(chuàng)建數(shù)據(jù)庫(kù)的用戶自動(dòng)成為該數(shù)據(jù)庫(kù)的一切者。 創(chuàng)建數(shù)據(jù)庫(kù)的過(guò)程實(shí)踐上就是為數(shù)據(jù)庫(kù)設(shè)計(jì)稱號(hào)、設(shè)計(jì)所占用的存儲(chǔ)空間和存放文件位置的過(guò)程等??梢赃\(yùn)用企業(yè)管理器和Transact-SQL言語(yǔ)創(chuàng)建數(shù)據(jù)庫(kù)。數(shù)

14、據(jù)庫(kù)的修正、刪除數(shù)據(jù)庫(kù)的備份3.7 SQL Server 2000 數(shù)據(jù)庫(kù)的對(duì)象3.7.1 表3.7.2 約束3.7.3 數(shù)據(jù)類型3.7.4 視圖3.7.5 索引3.7.6 存儲(chǔ)過(guò)程3.7.7 觸發(fā)器3.7.1 表根本概念表是包含數(shù)據(jù)庫(kù)中一切數(shù)據(jù)的數(shù)據(jù)庫(kù)對(duì)象,用來(lái)存儲(chǔ)各種信息。 在SQL Server 2000中,一個(gè)數(shù)據(jù)庫(kù)中最多可以創(chuàng)建200萬(wàn)個(gè)表,用戶創(chuàng)建數(shù)據(jù)庫(kù)表時(shí),最多可以定義1024列。在同一數(shù)據(jù)庫(kù)的不同表中,可以有一樣的字段,但在同一個(gè)表中不允許有一樣的字段,而且每個(gè)字段都要求數(shù)據(jù)類型一樣。 3.7.1 表表的創(chuàng)建默許值。指定列的默許值。定義為timestamp或帶IDENTITY屬

15、性的列不能指定。只需常量值如字符串、SQL Server內(nèi)部函數(shù)如SYSTEM_USER或NULL值可以用作默許值。精度和小數(shù)位數(shù)。精度是列的總長(zhǎng)度,包括整數(shù)部分和小數(shù)部分的長(zhǎng)度之和,但不包括小數(shù)點(diǎn);小數(shù)位數(shù)指定小數(shù)點(diǎn)后面的長(zhǎng)度。標(biāo)識(shí)。指定列能否是標(biāo)識(shí)列。一個(gè)表只能創(chuàng)建一個(gè)標(biāo)識(shí)列。必需同時(shí)指定種子和增量,或者兩者都不指定,默許值1,1??梢猿蔀闃?biāo)識(shí)列的數(shù)據(jù)類型有int、smallint、tinyint、numeric和decimal等系統(tǒng)數(shù)據(jù)類型;假設(shè)其數(shù)據(jù)類型為numeric和decimal,不允許出現(xiàn)小數(shù)位數(shù)。公式。用于指定計(jì)算列的列值表達(dá)式。排序規(guī)那么。指定列的排序規(guī)那么。 在數(shù)據(jù)庫(kù)中表

16、名必需是獨(dú)一的,但是假設(shè)為表指定了不同的用戶,就可以創(chuàng)建多個(gè)一樣稱號(hào)的表。 3.7.1 表表中數(shù)據(jù)的操作在企業(yè)管理器中操作表中的數(shù)據(jù) 運(yùn)用SELECT語(yǔ)句查詢數(shù)據(jù) 運(yùn)用INSERT語(yǔ)句插入數(shù)據(jù) 運(yùn)用UPDATE語(yǔ)句更新數(shù)據(jù) 運(yùn)用DELETE語(yǔ)句刪除數(shù)據(jù) SELECT 語(yǔ)法SELECT select_list INTO new_table FROM table_source WHERE search_condition GROUP BY group_by_expression HAVING search_condition ORDER BY order_expression ASC | DESC

17、 INSERT 語(yǔ)法INSERT INTO table_name WITH ( .n )| view_name| rowset_function_limited ( column_list ) VALUES ( DEFAULT | NULL | expression ,.n ) | derived_table | execute_statement | DEFAULT VALUESUPDATE 語(yǔ)法UPDATE table_name WITH ( .n ) | view_name | rowset_function_limited SET column_name = expression |

18、DEFAULT | NULL | variable = expression| variable = column = expression ,.n FROM ,.n WHERE | WHERE CURRENT OF GLOBAL cursor_name | cursor_variable_name OPTION ( ,.n ) DELETE 語(yǔ)法DELETE FROM table_name WITH ( .n ) | view_name | rowset_function_limited FROM ,.n WHERE | CURRENT OF GLOBAL cursor_name | cur

19、sor_variable_name 3.7.2 約束約束是SQL Server提供的自動(dòng)堅(jiān)持?jǐn)?shù)據(jù)庫(kù)完好性的一種方法列級(jí)約束。列級(jí)約束是列定義的一部分,只可以運(yùn)用在一列上。表級(jí)約束。表級(jí)約束獨(dú)立于列的定義,可以運(yùn)用在一個(gè)表的多列上。主鍵約束 主鍵能獨(dú)一地確定表中的每一條記錄,可以保證明體的完好性。不能取空值。獨(dú)一性約束獨(dú)一性約束用于指定一個(gè)或多個(gè)列的組合值具有獨(dú)一性,以防止在列中輸入反復(fù)的值運(yùn)用獨(dú)一性約束的字段允許為空值一個(gè)表中可以允許有多個(gè)獨(dú)一性約束可以把獨(dú)一性約束定義在多個(gè)字段上獨(dú)一性約束用于強(qiáng)迫在指定字段上創(chuàng)建一個(gè)獨(dú)一性索引默許情況下,創(chuàng)建的索引類型為非聚集索引3.7.2 約束檢查約束保證

20、數(shù)據(jù)庫(kù)數(shù)據(jù)的完好性一個(gè)列級(jí)檢查約束只能與限制的字段有關(guān);一個(gè)表級(jí)檢查約束只能與限制的表中字段有關(guān)一個(gè)表中可以定義多個(gè)檢查約束每個(gè)CREATE TABLE語(yǔ)句中每個(gè)字段只能定義一個(gè)檢查約束在多個(gè)字段上定義檢查約束,必需將檢查約束定義為表級(jí)約束當(dāng)執(zhí)行INSERT語(yǔ)句或者UPDATE語(yǔ)句時(shí),檢查約束將驗(yàn)證數(shù)據(jù)檢查約束中不能包含子查詢默許約束 每個(gè)字段只能定義一個(gè)默許約束假設(shè)定義的默許值長(zhǎng)于其對(duì)應(yīng)字段的允許長(zhǎng)度,那么輸入到表中的默許值將被截?cái)嗖荒軈⑴c到帶有IDENTITY屬性或者數(shù)據(jù)類型為timestamp的字段上3.7.2 約束外鍵約束 外鍵約束主要用來(lái)維護(hù)兩個(gè)表之間數(shù)據(jù)的一致性外鍵約束提供了字段參

21、照完好性外鍵約束不能自動(dòng)創(chuàng)建索引,需求用戶手動(dòng)創(chuàng)建用戶想要修正外鍵約束的數(shù)據(jù),必需有對(duì)外鍵約束所參考表的SELECT權(quán)限或者REFERENCES權(quán)限參考同一表中的字段時(shí),必需只運(yùn)用REFERENCES子句,不能運(yùn)用外鍵子句一個(gè)表中最多可以有31個(gè)外鍵約束在暫時(shí)表中,不能運(yùn)用外鍵約束主鍵和外鍵的數(shù)據(jù)類型必需嚴(yán)厲匹配 3.7.3 數(shù)據(jù)類型整型數(shù)據(jù)類型 Bigint、Int、Smallint、Tinyint浮點(diǎn)數(shù)據(jù)類型 Real:4個(gè)字節(jié)的,最大7位準(zhǔn)確位數(shù)。Float:可以準(zhǔn)確到第15位小數(shù),默許占用8個(gè)字節(jié)的存儲(chǔ)空間。Float數(shù)據(jù)類型也可以寫為floatn的方式,n為115之間的整數(shù)值。當(dāng)n取

22、17時(shí),系統(tǒng)用4個(gè)字節(jié)存儲(chǔ)它;當(dāng)n取815時(shí),用8個(gè)字節(jié)存儲(chǔ)它。Decimal和numeric:可以提供小數(shù)所需求的實(shí)踐存儲(chǔ)空間,可以用217個(gè)字節(jié)來(lái)存儲(chǔ)。也可以將其寫為decimalp,s的方式。例如:decimal10,5,表示共有10位數(shù),其中整數(shù)5位,小數(shù)5位。3.7.3 數(shù)據(jù)類型字符數(shù)據(jù)類型用來(lái)存儲(chǔ)各種字母、數(shù)字符號(hào)和特殊符號(hào)。在運(yùn)用時(shí)需求在其前后加上英文單引號(hào)或者雙引號(hào)。 Char:其定義方式為:charn n的取值為18000。默許n的值為1。Varchar:可以存儲(chǔ)長(zhǎng)達(dá)8000個(gè)字符的可變長(zhǎng)度字符串,和char類型不同varchar類型根據(jù)輸入數(shù)據(jù)的實(shí)踐長(zhǎng)度而變化。其定義方式為

23、:varcharn。 Nchar:采用Unicode一致字符編碼規(guī)范字符集每個(gè)Unicode字符用兩個(gè)字節(jié)為一個(gè)存儲(chǔ)單位。其定義方式為:ncharn。Nvarchar:運(yùn)用Unicode字符集的Varchar數(shù)據(jù)類型。其定義方式為:nvarcharn。3.7.3 數(shù)據(jù)類型日期和時(shí)間數(shù)據(jù)類型Datetime:占用8個(gè)字節(jié)。用于存儲(chǔ)日期和時(shí)間的結(jié)合體,可以存儲(chǔ)從公元1753年1月1日零時(shí)起公元9999年12月31日23時(shí)59分59秒之間的一切日期和時(shí)間,其準(zhǔn)確度可達(dá)三百分之一秒。當(dāng)存儲(chǔ)datetime數(shù)據(jù)類型時(shí),默許的格式是:MM DD YYYY hh:mm A.M./P.M。當(dāng)插入數(shù)據(jù)或者在其它

24、地方運(yùn)用datetime類型時(shí),需求用單引號(hào)把它括起來(lái)。默許January 1,1900 12:00 A.M。可以接受的輸入格式如下:Jan 4 1999、JAN 4 1999、January 4 1999、Jan 1999 4、1999 4 Jan和1999 Jan 4。datetime數(shù)據(jù)類型允許運(yùn)用/、-和.作為不同時(shí)間單位間的分隔符。Smalldatetime: 4個(gè)字節(jié)。存儲(chǔ)從1900年1月1日2079年6月6日內(nèi)的日期。3.7.3 數(shù)據(jù)類型文本和圖形數(shù)據(jù)類型Text:容量可以在1231-1個(gè)字節(jié)。在定義Text數(shù)據(jù)類型時(shí),不需求指定數(shù)據(jù)長(zhǎng)度,SQL Server會(huì)根據(jù)數(shù)據(jù)的長(zhǎng)度自動(dòng)

25、為其分配空間。Ntext:采用unicode規(guī)范字符集,用于存儲(chǔ)大容量文本數(shù)據(jù)。其實(shí)際上的容量為230-11,073,741,823個(gè)字節(jié)。Image:用于存儲(chǔ)照片、目錄圖片或者圖畫,其實(shí)際容量為231-12,147,483,647個(gè)字節(jié)。貨幣數(shù)據(jù)類型Money:用于存儲(chǔ)貨幣值,數(shù)值以一個(gè)正數(shù)部分和一個(gè)小數(shù)部分存儲(chǔ)在兩個(gè)4字節(jié)的整型值中,存儲(chǔ)范圍為-922337285477.5808 922337285477.5808,精度為貨幣單位的萬(wàn)分之一。Smallmoney:其存儲(chǔ)范圍為-214748.3468214748.3467。當(dāng)為money或smallmoney的表輸入數(shù)據(jù)時(shí),必需在有效位置前

26、面加一個(gè)貨幣單位符號(hào)如$或其它貨幣單位的記號(hào)。 3.7.3 數(shù)據(jù)類型位數(shù)據(jù)類型Bit稱為位數(shù)據(jù)類型,有兩種取值:0和1。在輸入0以外的其它值時(shí),系統(tǒng)均把它們當(dāng)1對(duì)待。特殊數(shù)據(jù)類型Timestamp:也稱作時(shí)間戳數(shù)據(jù)類型。是一種自動(dòng)記錄時(shí)間的數(shù)據(jù)類型,主要用于在數(shù)據(jù)表中記錄其數(shù)據(jù)的修正時(shí)間。它提供數(shù)據(jù)庫(kù)范圍內(nèi)的獨(dú)一值。Uniqueidentifier:也稱作獨(dú)一標(biāo)識(shí)符數(shù)據(jù)類型。Uniqueidentifier用于存儲(chǔ)一個(gè)16字節(jié)長(zhǎng)的二進(jìn)制數(shù)據(jù)類型,它是SQL Server根據(jù)計(jì)算機(jī)網(wǎng)絡(luò)適配器地址和CPU時(shí)鐘產(chǎn)生的全局獨(dú)一標(biāo)識(shí)符代碼Globally Unique Identifier,簡(jiǎn)寫為GUI

27、D。 3.7.4 視圖視圖的概念 視圖是是從一個(gè)或者多個(gè)數(shù)據(jù)表或視圖中導(dǎo)出的虛表,視圖的構(gòu)造和數(shù)據(jù)是對(duì)數(shù)據(jù)表進(jìn)展查詢的結(jié)果。視圖被定義后便存儲(chǔ)在數(shù)據(jù)庫(kù)中,經(jīng)過(guò)視圖看到的數(shù)據(jù)只是存放在基表中的數(shù)據(jù)。當(dāng)對(duì)經(jīng)過(guò)視圖看到的數(shù)據(jù)進(jìn)展修正時(shí),相應(yīng)的基表的數(shù)據(jù)也會(huì)發(fā)生變化,同時(shí),假設(shè)基表的數(shù)據(jù)發(fā)生變化,這種變化也會(huì)自動(dòng)地反映到視圖中。視圖可以是一個(gè)數(shù)據(jù)表的一部分,也可以是多個(gè)基表的結(jié)合。視圖的優(yōu)點(diǎn)視圖可以屏蔽數(shù)據(jù)的復(fù)雜性,簡(jiǎn)化用戶對(duì)數(shù)據(jù)庫(kù)的操作。 視圖可以讓不同的用戶以不同的方式看到不同或者一樣的數(shù)據(jù)集??梢赃\(yùn)用視圖重新組織數(shù)據(jù)。 視圖可以定制不同用戶對(duì)數(shù)據(jù)的訪問(wèn)權(quán)限。 3.7.4 視圖創(chuàng)建視圖 視圖的稱號(hào)

28、 只能在當(dāng)前數(shù)據(jù)庫(kù)中創(chuàng)建視圖。一個(gè)視圖中行、列的限制。假設(shè)視圖中某一列是函數(shù)、數(shù)學(xué)表達(dá)式、常量或者來(lái)自多個(gè)表的列名一樣,那么必需為列定義稱號(hào)。 不能在視圖上創(chuàng)建索引,不能在規(guī)那么、默許的定義中援用視圖。 3.7.4 視圖運(yùn)用視圖 修正視圖中的數(shù)據(jù)時(shí)每次修正都只能影響一個(gè)基表。不能修正那些經(jīng)過(guò)計(jì)算得到的字段。假設(shè)在創(chuàng)建視圖時(shí)指定了WITH CHECK OPTION選項(xiàng),那么一切運(yùn)用視圖修正數(shù)據(jù)庫(kù)信息時(shí),必需保證修正后的數(shù)據(jù)滿足視圖定義的范圍。執(zhí)行UPDATE、DELETE命令時(shí),所刪除與更新的數(shù)據(jù)必需包含在視圖的結(jié)果集中。假設(shè)視圖援用多個(gè)表時(shí),無(wú)法用DELETE命令刪除數(shù)據(jù),假設(shè)運(yùn)用UPDATE

29、命令那么應(yīng)與INSERT操作一樣,被更新的列必需屬于同一個(gè)表。 3.7.5 索引索引的概念 數(shù)據(jù)庫(kù)中的索引是一個(gè)列表,在這個(gè)列表中包含了某個(gè)表中一列或者假設(shè)干列值的集合,以及這些值的記錄在數(shù)據(jù)表中的存儲(chǔ)位置的物理地址。索引的優(yōu)點(diǎn) 可以大大加快數(shù)據(jù)檢索速度。經(jīng)過(guò)創(chuàng)建獨(dú)一索引,可以保證數(shù)據(jù)記錄的獨(dú)一性。在運(yùn)用ORDER BY和GROUP BY子句進(jìn)展檢索數(shù)據(jù)時(shí),可以顯著減少查詢中分組和排序的時(shí)間。運(yùn)用索引可以在檢索數(shù)據(jù)的過(guò)程中提高系統(tǒng)性能??梢约铀俦砼c表之間的銜接,這一點(diǎn)在實(shí)現(xiàn)數(shù)據(jù)的參照完好性方面有特別的意義。3.7.5 索引索引的分類聚集索引和非聚集索引復(fù)合索引獨(dú)一索引3.7.6 存儲(chǔ)過(guò)程存儲(chǔ)過(guò)

30、程的概念 SQL Server的存儲(chǔ)過(guò)程類似于編程言語(yǔ)中的過(guò)程。在運(yùn)用Transact-SQL言語(yǔ)編程的過(guò)程中,可以將某些需求多次調(diào)用的實(shí)現(xiàn)某個(gè)特定義務(wù)的代碼段編寫成一個(gè)過(guò)程,將其保管在數(shù)據(jù)庫(kù)中,并由SQL Server效力器經(jīng)過(guò)過(guò)程名來(lái)調(diào)用它們,這些過(guò)程就叫做存儲(chǔ)過(guò)程。存儲(chǔ)過(guò)程在創(chuàng)建時(shí)就被編譯和優(yōu)化,調(diào)用一次以后,相關(guān)信息就保管在內(nèi)存中,下次調(diào)用時(shí)可以直接執(zhí)行。存儲(chǔ)過(guò)程的優(yōu)點(diǎn) 實(shí)現(xiàn)了模塊化編程。存儲(chǔ)過(guò)程具有對(duì)數(shù)據(jù)庫(kù)立刻訪問(wèn)的功能。運(yùn)用存儲(chǔ)過(guò)程可以加快程序的運(yùn)轉(zhuǎn)速度。運(yùn)用存儲(chǔ)過(guò)程可以減少網(wǎng)絡(luò)流量。運(yùn)用存儲(chǔ)過(guò)程可以提高數(shù)據(jù)庫(kù)的平安性。存儲(chǔ)過(guò)程例如CREATE PROCEDURE findproduct article char(11)AS SELECT * FROM product WHERE article like article GO 存儲(chǔ)過(guò)程執(zhí)行EXECUTE findproduct 電阻EXECUTE findproduct article= 電阻EXEC findproduct 電阻EX

溫馨提示

  • 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)論