




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第一章數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)知識1.1 數(shù)據(jù)庫系統(tǒng)概述1.2 數(shù)據(jù)模型1.3 關(guān)系數(shù)據(jù)庫1.4 數(shù)據(jù)庫設(shè)計基礎(chǔ)1.5 access2003 數(shù)據(jù)庫簡介1.1 數(shù)據(jù)庫系統(tǒng)概述1.1.1 數(shù)據(jù)庫系統(tǒng)的組成數(shù)據(jù):描述事物的符號記錄,是數(shù)據(jù)庫中存儲的基本對象。例如文字、圖形、圖像、聲音等。數(shù)據(jù)庫(db ) : 長期存儲在計算機內(nèi)的、有組織的、 可共享的數(shù)據(jù)集合。 數(shù)據(jù)庫管理系統(tǒng) (dbms ) :位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,是數(shù)據(jù)庫系統(tǒng)的中心樞紐。能科學(xué)的組織和儲數(shù)據(jù),高效的獲取和維護數(shù)據(jù)。數(shù)據(jù)庫管理系統(tǒng)的主要功能:數(shù)據(jù)定義功能數(shù)據(jù)操縱功能數(shù)據(jù)庫的運行管理數(shù)據(jù)庫的建立與維護功能數(shù)據(jù)庫系統(tǒng):在計
2、算機系統(tǒng)中引入數(shù)據(jù)庫之后組成的系統(tǒng),用來組織和存取大量數(shù)據(jù)的管理系統(tǒng)。數(shù)據(jù)庫系統(tǒng)是由計算機系統(tǒng)(硬件和軟件系統(tǒng))、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫管理員和用戶組成的具有高度組織性的整體。通常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。1.1.2 數(shù)據(jù)庫系統(tǒng)的特點:數(shù)據(jù)的結(jié)構(gòu)化數(shù)據(jù)的共享性數(shù)據(jù)的獨立性數(shù)據(jù)的存取粒度數(shù)據(jù)庫管理系統(tǒng)對數(shù)據(jù)進行統(tǒng)一的管理和控制為用戶提供了友好的接口1.1.3 高級數(shù)據(jù)庫階段1、分布式數(shù)據(jù)庫系統(tǒng)2、數(shù)據(jù)庫的發(fā)展方向一是改造和擴充關(guān)系數(shù)據(jù)庫,以適應(yīng)新的應(yīng)用要求;二是改用新的數(shù)據(jù)庫模型。1.2 數(shù)據(jù)模型數(shù)據(jù)模型:是現(xiàn)實世界數(shù)據(jù)特征的抽象,是工具,是用來抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息的工
3、具。數(shù)據(jù)模型應(yīng)滿足以下三個方面的要求:1、能夠比較真實的模擬現(xiàn)實世界2、容易被人理解3、便于在計算機系統(tǒng)中實現(xiàn)數(shù)據(jù)模型的組成要素:數(shù)據(jù)模型是由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)的約束條件三部分組成的。數(shù)據(jù)結(jié)構(gòu):所研究對象的集合,這些對象是數(shù)據(jù)庫的組成部分。數(shù)據(jù)結(jié)構(gòu)分為兩類:一類是與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象;一類是與數(shù)據(jù)之間聯(lián)系有關(guān)的對象。數(shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象的實例允許執(zhí)行的操作的集合,包括操作及有關(guān)的操作規(guī)則。數(shù)據(jù)的約束條件:是一組完整性規(guī)則的集合。概念模型概念模型涉及以下術(shù)語:1、實體:客觀存在并可相互區(qū)別的事物稱為實體。實體可以是實際事物,也可以是抽象事件。2、屬性:描述實體的特性
4、稱為屬性。屬性的具體取值稱為屬性值,用以刻畫一個具體實體。3、關(guān)鍵字:如果某個屬性或?qū)傩越M合能夠唯一的標識出實體集中的各個實體,可以選做關(guān)鍵字,也稱為碼。4、聯(lián)系:實體集之間的對應(yīng)關(guān)系稱為聯(lián)系,它反映現(xiàn)實世界事物之間的相互關(guān)聯(lián)。聯(lián)系分為種,一種是實體內(nèi)部各屬性之間的聯(lián)系,另一種是實體之間的聯(lián)系。5、e-r 圖:常用實體短橫線聯(lián)系方法來描述現(xiàn)實世界的概念模型。e-r 圖有三個要素。實體:用矩形并在框內(nèi)標注實體名稱來表示。屬性:用橢圓表示,并用連線將其與相應(yīng)的實體連接起來。聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用連線分別與有關(guān)實體連接起來,同時在連線上標上連線的類型(1:1、1:n 或 m:n)
5、精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 1 頁,共 40 頁 - - - - - - - - -聯(lián)系有三種類型。1、一對一聯(lián)系:如果對于實體集a 中的每一個實體,實體集b 中至多有一個實體與之聯(lián)系反之亦然,則稱實體集a 與實體集b 具有一對一聯(lián)系,記為1:1。例如:系和主任2、一對多聯(lián)系:如果對于實體集a 中的每一個實體,實體集b 中有 n 個實體( n0)與之聯(lián)系,反之,對于實體集b 中的每一個實體,實體集a 中至多有一個實體與之聯(lián)系,則稱實體a與實體集 b 具有一對多聯(lián)系,記為1:n。例如:系和學(xué)生3、多對多聯(lián)系:如果對于實體集a 中的每
6、一個實體,實體集b 中有 n 個實體( n0)與之聯(lián)系,反之,對于實體集b 中的每一個實體,實體集a 中也有 m 個實體( m0)與之聯(lián)系,稱實體集 a 與實體集b 具有多對多聯(lián)系,記為m:n。例如:學(xué)生和課程常用的數(shù)據(jù)模型層次模型 :該模型的基本數(shù)據(jù)結(jié)構(gòu)是層次結(jié)構(gòu),也稱樹型結(jié)構(gòu), 樹中每個節(jié)點表示一個實體類型。這些節(jié)點應(yīng)滿足:有且只有一個節(jié)點無雙親結(jié)點(根節(jié)點);其他節(jié)點有且僅有一個雙結(jié)點。網(wǎng)狀模型 :網(wǎng)狀模型的數(shù)據(jù)結(jié)構(gòu)是一個網(wǎng)狀結(jié)構(gòu)。應(yīng)滿足以下兩個條件的基本層次聯(lián)系集合:個節(jié)點可以有多個雙親結(jié)點;多個節(jié)點可以無雙親結(jié)點。關(guān)系模型 :關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)是二維表,由行和列組成。一張二維表稱為一
7、個關(guān)系。關(guān)系模中的主要概念有:關(guān)系、屬性、元組、域和關(guān)鍵字。面向?qū)ο竽P?:面向?qū)ο蟮臄?shù)據(jù)模型中的基本數(shù)據(jù)結(jié)構(gòu)是對象,一個對象由一組屬性和一組方組成,屬性用來描述對象的特征,方法用來描述對象的操作。一個對象的屬性可以是另一個對象,另一個對象的屬性還可以用其他對象描述,以此來模擬現(xiàn)實世界中的復(fù)雜實體。數(shù)據(jù)庫的體系結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的二級映像功能1.3 關(guān)系數(shù)據(jù)庫關(guān)系的一些術(shù)語1、關(guān)系:在關(guān)系模型中, 一個關(guān)系就是一張二維表,每一個關(guān)系都有一個關(guān)系名。在數(shù)據(jù)庫中,一個關(guān)系存儲為一個數(shù)據(jù)表。2、屬性:表中的列稱為屬性,每一個列都有一個屬性名,對應(yīng)數(shù)據(jù)表中的一個字段。3、元組:表中
8、的行稱為元組。一行就是一個元組,對應(yīng)數(shù)據(jù)表中的記錄,元組的各分量分別對應(yīng)于關(guān)系的各個屬性。關(guān)系模型要求每個元組的每個分量都是不可再分的數(shù)據(jù)項。4、域:具有相同數(shù)據(jù)類型的值的集合稱為域,域是屬性的取值范圍,即不同元組對同一個屬性的取值所限定的范圍。5、候選碼:如果通過關(guān)系中的某個屬性或?qū)傩越M能唯一地標識一個元組,稱該屬性或?qū)傩越M為候選碼。6、主碼(主鍵) :在一個關(guān)系中有多個候選碼,則選定其中一個為主碼(主鍵)。主碼的屬性稱為主屬性。7、外碼(外鍵) :如果表中的一個字段不是本表的主碼,而是另外一個表的主碼或候選碼,這個字段(屬性)就稱為外碼。關(guān)系模型關(guān)系數(shù)據(jù)庫采用關(guān)系數(shù)據(jù)模型(簡稱關(guān)系模型)作
9、為數(shù)據(jù)組織方式,而關(guān)系模型是用二維表格結(jié)構(gòu)來表示實體及實體間聯(lián)系的模型。二維表中的每一列代表實體或?qū)嶓w間關(guān)系的某種屬性,二維表中的一行叫做一個元組,是記錄類型的實例,代表了某個具體的實體或具體實體間的特定關(guān)系。關(guān)系模型不僅可以方便的表示兩個實體類型間的1:1、1:n 關(guān)系,而且可以直接描述他們之間的m :n 關(guān)系。關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和完整性規(guī)則三部分組成。關(guān)系運算1、傳統(tǒng)的集合運算并運算:設(shè)有兩個關(guān)系r 和 s,它們具有相同的結(jié)構(gòu),r 和 s 的并是由屬于r 或?qū)儆?s 的元組組成的集合,運算符為u。記為 t= rus 差運算:r 和 s的差是由屬于r 但不屬于s 的元組組成
10、的集合,運算符為-。記為 t= r-s 精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 2 頁,共 40 頁 - - - - - - - - -交運算: r 和 s 的交是由既屬于r 又屬于 s 的元組組成的集合,運算符為n。記為 t= rns=r- (r-s)2、專門的關(guān)系運算選擇運算 : 選擇關(guān)系中滿足一定條件的元組。從關(guān)系中找出滿足給定條件的那些元組稱為選擇。其中的條件是以邏輯表達式給出的,值為真的元組將被選取。投影運算 :選取關(guān)系中的某些列,并且將這些列組成一個新的關(guān)系。從關(guān)系模型中挑選若干屬性組成新的關(guān)系稱為投影。聯(lián)接運算 :選擇和投影運算
11、都屬于一目運算,它們的操作對象只是一個關(guān)系。聯(lián)接運算是二目運算,需要兩個關(guān)系作為操作對象。聯(lián)接是將兩個關(guān)系模式通過公共的屬性名拼接成一個更寬的關(guān)系模式,生成的新關(guān)系中包含滿足聯(lián)接條件的元組。關(guān)系完整性實體完整性實體完整性規(guī)則:若屬性 a 是基本關(guān)系r 的主碼, 則屬性 a 不能取空值。 實體完整性規(guī)則規(guī)定基本關(guān)系的所有主屬性都不能取空值,而不僅是主碼整體不能取空值。參照完整性參照完整性規(guī)則:若屬性(或?qū)傩越M)f 是基本關(guān)系r 的外碼,它與基本關(guān)系s 的主碼 k 相對應(yīng)(基本關(guān)系r 和 s 不一定是相同的關(guān)系) ,則 r 中的每個元組在f 上的值必須如下:(1) 、或者取空值(f 的每個屬性值均
12、為空值)(2) 、或者等于s中的某個元組的主碼值。參照完整性規(guī)則就是定義外碼與主碼之間的引用規(guī)則。用戶定義的完整性用戶定義的完整性就是針對某一具體關(guān)系數(shù)據(jù)庫的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。1.4 數(shù)據(jù)庫設(shè)計基礎(chǔ)1.4.1 數(shù)據(jù)庫設(shè)計步驟1、設(shè)計原則關(guān)系數(shù)據(jù)庫的設(shè)計應(yīng)遵從概念單一化“ 一事一地” 的原則避免在表之間出現(xiàn)重復(fù)字段表中的字段必須是原始數(shù)據(jù)和基本數(shù)據(jù)元素用外部關(guān)鍵字保證有關(guān)聯(lián)的表之間的聯(lián)系2、 設(shè)計的步驟和過程(1) 、需求分析信息需求處理要求安全性和完整性要求(2) 、確定需要的表每個表應(yīng)該只包含關(guān)于一個主題的信息表中不應(yīng)該包含重復(fù)信息,并且信息不應(yīng)該在
13、表之間復(fù)制(3) 、確定所需字段每個字段直接和表的實體相關(guān)以最小的邏輯單位存儲信息表中的字段必須是原始數(shù)據(jù)確定主關(guān)鍵字字段(4) 、確定聯(lián)系一對多聯(lián)系多對多聯(lián)系一對一聯(lián)系(5) 、設(shè)計求精是否遺忘了字段是否存在保持大量空白字段是否有包含了同樣字段的表表中是否帶有大量不屬于某實體的字段是否在某個表中重復(fù)輸入了同樣的信息是否為每個表選擇了合適的主碼是否有字段很多而記錄很少的表,而且許多記錄中的字段值為空1.5 access 2003 數(shù)據(jù)庫簡介access 的發(fā)展過程access 2003 新增功能第二章access 2003 數(shù)據(jù)庫2.1 access 2003 數(shù)據(jù)庫開發(fā)環(huán)境2.2 acces
14、s 2003 數(shù)據(jù)庫操作與管理2.3 access 2003 數(shù)據(jù)庫安全性2.4 安全機制管理2.5 加密數(shù)據(jù)庫2.1 access 2003 數(shù)據(jù)庫開發(fā)環(huán)境2.1.1 access 2003 數(shù)據(jù)庫的安裝、啟動與關(guān)閉安裝啟動關(guān)閉2.1.2 access 2003 數(shù)據(jù)庫組成1、表:表是數(shù)據(jù)庫最基本的組件,是存儲數(shù)據(jù)的基本單元,由不同的列、行組合而成,每一列精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 3 頁,共 40 頁 - - - - - - - - -代表某種特定的數(shù)據(jù)類型,稱為字段;每一行由各個特定的字段組成,稱為記錄。2、查詢:通過設(shè)置某
15、些條件,從表中獲取所需要的數(shù)據(jù)。按照指定規(guī)則,查詢可以從一個表、一組相關(guān)表和其他查詢中抽取全部或部分數(shù)據(jù),并將其集中起來,形成一個集合供用戶查看。3、窗體: 是數(shù)據(jù)庫和用戶的一個聯(lián)系界面,用于顯示包含在表或查詢中的數(shù)據(jù)和操作數(shù)據(jù)庫中的數(shù)據(jù)。在窗體中,不僅可以包含普通的數(shù)據(jù),還可以包含圖片、圖形、聲音、視頻等多種對象。4、報表:通常作為數(shù)據(jù)統(tǒng)計的方式來使用。5、頁:是access 2000 之后新增的對象,指的就是網(wǎng)頁。6、宏:是由一系列命令組成的集合,以實現(xiàn)自動執(zhí)行重復(fù)性工作的功能。使用宏可以簡化一些經(jīng)常性的操作。7、模塊:是用vba 語言編寫的程序段,它以visual basic 為內(nèi)置的數(shù)
16、據(jù)庫程序語言。對于數(shù)據(jù)庫的一些較為復(fù)雜或高級的應(yīng)用功能,需要使用vba 代碼編程實現(xiàn)。2.1.3 access 2003 數(shù)據(jù)庫操作環(huán)境1、數(shù)據(jù)庫窗口2、組3、access 2003 幫助系統(tǒng)2.2 access 2003 數(shù)據(jù)庫操作與管理2.2.1 創(chuàng)建數(shù)據(jù)庫使用向?qū)?chuàng)建數(shù)據(jù)庫自定義創(chuàng)建數(shù)據(jù)庫數(shù)據(jù)庫的打開與關(guān)閉2.2.2 數(shù)據(jù)庫管理轉(zhuǎn)換數(shù)據(jù)庫壓縮和修復(fù)數(shù)據(jù)庫拆分數(shù)據(jù)庫同步復(fù)制2.3 access 2003 數(shù)據(jù)庫安全性2.3.1 設(shè)置數(shù)據(jù)庫密碼設(shè)置密碼使用密碼撤銷密碼2.3.2 用戶集安全機制用戶、組和權(quán)限工作組信息文件2.3.3 使用權(quán)限顯示權(quán)限和隱式權(quán)限權(quán)限所適用對象2.4 安全機制管理
17、增加帳戶刪除帳戶更改賬戶權(quán)限打印帳戶和組帳戶列表2.5 加密數(shù)據(jù)庫數(shù)據(jù)庫加密是指對數(shù)據(jù)庫文件進行壓縮,加密后的數(shù)據(jù)庫無法通過工具程序或字處理程序解密。加密后的數(shù)據(jù)庫依然可以在access 2003 系統(tǒng)中打開,不限制用戶對對象的訪問。第 3 章表3.1 創(chuàng)建表3.2 管理與維護表3.3 操作表3.4 數(shù)據(jù)的導(dǎo)入與導(dǎo)出3.1 創(chuàng)建表access 2003 提供三種創(chuàng)建表的方法:1、使用設(shè)計器創(chuàng)建表2、使用向?qū)?chuàng)建表3、通過輸入數(shù)據(jù)創(chuàng)建表使用設(shè)計視圖創(chuàng)建表步驟: 1.在數(shù)據(jù)庫窗口中選擇表對象,雙擊使用設(shè)計器創(chuàng)建表2.或者單擊【新建】按鈕,選擇設(shè)計視圖3.在表設(shè)計視圖中, 【字段名稱】列輸入字段名,
18、【數(shù)據(jù)類型】列選擇字段的數(shù)據(jù)類型,【說明】欄中輸入有關(guān)此字段的說明,窗口下部的【字段屬性】區(qū)用于設(shè)置字段的屬性。4.所有的字段名、數(shù)據(jù)類型、說明及字段屬性都設(shè)置完后,選擇【文件】| 【保存】或者單擊工具欄中的【保存】按鈕。5.如果在保存表之前未定義主碼字段,則access2003 將詢問是否由系統(tǒng)自動添加一個主碼。選擇【是】表示確認,選擇【否】表示不需要自動添加主碼字段。關(guān)于字段名稱、數(shù)據(jù)類型、說明字段名稱在 “ 字段名稱” 列中可以添加或顯示已有字段名稱,字段名的命名必須符合精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 4 頁,共 40 頁 -
19、- - - - - - - -access2003 的對象命名規(guī)則。(1) 、長度最多可達64 個字符;( 2) 、可以包括字母、數(shù)字和空格,以及除句點、驚嘆號、重音符號和方括號外的所有特殊字符;(3) 、不能使用前導(dǎo)空格或者控制字符(ascii值從031的字符)。2. 數(shù)據(jù)類型:用于指定在字段中存儲的數(shù)據(jù)類型。3. 說明該列用于對字段進行必要的說明。例如:字段的含義及用途等字段屬性:決定了如何存儲和顯示字段中的數(shù)據(jù)查閱屬性 :字段的查閱屬性選項卡只有一個【顯示控件】屬性,該屬性僅對文本、數(shù)字和是/否類型的字段有效。1.對文本和數(shù)字類型的字段提供了三個選項值:文本框(默認值)、列表框和組合框2
20、.對是 /否類型的字段提供了3 個選項值:復(fù)選框(默認值)、文本框和組合框主 碼主碼 (也稱主鍵、主關(guān)鍵) :用于唯一標識表中每條記錄的一個或一組字段。表設(shè)計主碼,可以確保唯一性,避免任何重復(fù)的數(shù)值或null (空)值保存到主碼字段中。在 access 2003 中,可以定義3 種主碼:自動編號、 單字段及 多字段主碼自動編號主碼 : 創(chuàng)建一個空表時,在保存表之前如果未設(shè)置表的主碼,access2003 會詢問是否需要設(shè)置一個自動編號的主碼。它的作用是在表中添加一個自動編號字段,在輸入記錄時,自動編號字段可設(shè)置為自動輸入連續(xù)數(shù)字的編號。單字段主碼 :在表中,如果某一字段的值能唯一標識一條記錄,
21、就可以將此字段指定為主碼。如果選擇作為主碼的字段有重復(fù)值或null (空)值, access 2003 就不會將它設(shè)置為主碼。多字段主碼 :在表中,可以將兩個或更多的字段指定為主碼(至多包括10 個字段)。設(shè)置主碼的操作步驟:1、在設(shè)計視圖中打開表;2、單擊行選擇器,選擇主碼字段所在的行,如果要設(shè)置多字段主碼,先按住ctrl 鍵,然后單擊行選擇器選擇所需的字段;3、單擊工具欄中的【主碼】按鈕,或右擊,從彈出的快捷菜單中選擇【主碼】命令。索引創(chuàng)建索引1、創(chuàng)建單字段索引在設(shè)計視圖中打開需要設(shè)置單字段索引的表;單擊要設(shè)置索引的字段行;在【字段屬性】選項卡中,單擊【索引】屬性框,根據(jù)字段的數(shù)據(jù)值,選擇
22、【有(無重復(fù) )】 或【有 (有重復(fù) )】選項。2、創(chuàng)建多字段索引在設(shè)計視圖中,打開需要創(chuàng)建多字段索引的表;選擇【視圖】 | 【索引】命令,或者單擊工具欄中的【索引】按鈕,打開在【索引名稱】列中輸入索引名稱;在【字段名稱】列中,單擊右邊向下箭頭,從下拉列表中選擇索引的第一字段;在【排序次序】列中,選擇【升序】或【降序】選項;根據(jù)需要可繼續(xù)定義其他需要索引的字段。查看與編輯索引在設(shè)計視圖中打開包含索引的表;選擇【視圖】 | 【索引】命令,或單擊工具欄中【索引】按鈕,打開【索引】對話框;在【索引】對話框中列出當前表中已定義的索引名稱、索引字段、索引的排序次序等;要刪除某個索引,可以單擊行選定器選擇
23、索引,然后按 delete 鍵刪除。使用向?qū)?chuàng)建表步驟: 1.在數(shù)據(jù)庫窗口中選擇表對象2.單擊新建按鈕,選擇表向?qū)?.直接雙擊使用向?qū)?chuàng)建表通過輸入數(shù)據(jù)創(chuàng)建表精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 5 頁,共 40 頁 - - - - - - - - -1.在數(shù)據(jù)庫窗口中選擇表對象,雙擊通過輸入數(shù)據(jù)創(chuàng)建表2.此時系統(tǒng)打開一個空表3.如果要對字段重新命名,可雙擊字段名,然后輸入新名稱。4.在各字段中輸入相應(yīng)的數(shù)據(jù)。5.輸入數(shù)據(jù)后,單擊工具欄中的【保存】按鈕,或者選擇【文件】菜單中【保存】命令,在顯示的【另存為】對話框中輸入表的名稱,單擊【確定】
24、按鈕保存表。3.2 管理與維護表3.2.1 表間關(guān)系的建立如果兩個表使用了共同的字段,就應(yīng)該為這兩個表建立一個關(guān)系,通過表間關(guān)系就可以指出一個表中的數(shù)據(jù)與另一個表中的數(shù)據(jù)的相關(guān)方式。表間關(guān)系的類型有:一對一、一對多、多對多當創(chuàng)建表間關(guān)系時,必須遵從參照完整性規(guī)則,這是一組控制刪除或修改相關(guān)表數(shù)據(jù)方式的規(guī)則。參照完整性規(guī)則:1、在將記錄添加到相關(guān)表中之前,主表中必須已經(jīng)存在了匹配的記錄;2、如果匹配的記錄存在于相關(guān)表中,則不能更改主表中的主碼;3、如果匹配的記錄存在于相關(guān)表中,則不能刪除主表中的記錄。創(chuàng)建表間關(guān)系1、在數(shù)據(jù)庫窗口中,單擊工具欄中的【關(guān)系】按鈕,或在數(shù)據(jù)庫窗口中右擊,在快捷菜單中選
25、擇【關(guān)系】命令2、在窗口中右擊,從快捷菜單中選擇【顯示表】命令3、在【關(guān)系】窗口中,將顯示添加的表及字段,主碼自動用粗體標志。4、在【編輯關(guān)系】對話框中選中【實施參照完整性】和【級聯(lián)更新相關(guān)字段】復(fù)選框。5、單擊【聯(lián)接類型】按鈕,打開【聯(lián)接屬性】對話框。6、在【編輯關(guān)系】對話框中,單擊【創(chuàng)建】按鈕,即在關(guān)系表之間用一條線將二者連接起來,表示已經(jīng)創(chuàng)建好表之間的關(guān)系。7、關(guān)閉【編輯關(guān)系】對話框,保存設(shè)定的關(guān)系。編輯與刪除表間關(guān)聯(lián)對已經(jīng)存在的關(guān)系,單擊關(guān)系連線,連線會變黑,右擊,從快捷菜單中選擇【編輯關(guān)系】命令,或者雙擊關(guān)系連線,系統(tǒng)會打開【編輯關(guān)系】對話框,從中可以對創(chuàng)建的關(guān)系進行修改。單擊關(guān)系連
26、線后按delete 鍵或右擊并從快捷菜單中選擇【刪除】命令,可刪除表間的關(guān)系。3.2.2 修改表結(jié)構(gòu)添加、刪除、重命名字段和移動字段的位置在【設(shè)計】視圖中,可以進行添加新字段的操作1、添加字段2、刪除字段3、重命名字段4、移動字段的位置修改字段的數(shù)據(jù)類型修改字段的屬性3.3 操作表3.3.1 數(shù)據(jù)輸入在數(shù)據(jù)庫窗口中,選中要打開的數(shù)據(jù)表,在表名上雙擊,或者單擊工具欄中的【打開】按鈕,即進入數(shù)據(jù)表視圖窗口。窗口的主要組件:記錄選擇器按鈕星號記錄導(dǎo)航器輸入 “ 是/否” 型數(shù)據(jù)輸入 “ 日期 /時間 ” 型數(shù)據(jù)輸入 “ole對象 ” 型數(shù)據(jù)輸入 “ 超鏈接 ” 型數(shù)據(jù)輸入 “ 查閱向?qū)?” 型數(shù)據(jù)3
27、.3.2 排序記錄排序就是按照某個字段的內(nèi)容值重新排列數(shù)據(jù)記錄。默認情況下,access 2003 按主碼字段排序記錄,如果表中沒有主碼,則以輸入的次序排序記錄。在數(shù)據(jù)檢索和顯示時,可按不同的順序來排列記錄。1、單字段排序:若要對表或窗體中的某個字段排序,先單擊要排序的字段,然后進行下列操作之一:單擊工具欄中的【升序】或【降序】按鈕。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 6 頁,共 40 頁 - - - - - - - - -使用【記錄】 | 【排序】命令,選擇【升序排序】或【降序排序】。右擊字段并從快捷菜單中選擇【升序排序】或【降序排序】
28、命令。若要將記錄恢復(fù)到原來的順序,使用【記錄】| 【取消篩選 /排序】命令,或右擊數(shù)據(jù)表并從快捷菜單中選擇【取消篩選/排序】命令。2、多字段排序:如果要將兩個以上的字段排序,這些字段在數(shù)據(jù)表中必須相鄰。排序的優(yōu)先權(quán)從左到右。在確保要排序的字段相鄰后,選擇這些字段,再選擇【升序】或【降序】排列。3、保存排序順序:改變記錄的排序后,在關(guān)閉表時,access 2003 會提示是否保存對設(shè)計(包括排序順序)的更改。選擇【是】,就保存排序,再打開時將按該排序顯示。3.3.3 篩選記錄 :當要顯示數(shù)據(jù)表或窗體中的某些而不是全部記錄時,可使用篩選操作。篩選處理是對記錄進行篩選,選擇符合準則的記錄。準則是一個
29、條件集,用來限制某個記錄子集的顯示。 access 2003 提供了 5 種篩選記錄的方法。按窗體篩選按選定內(nèi)容篩選內(nèi)容排除篩選高級篩選 /排序輸入篩選3.3.4 設(shè)置數(shù)據(jù)表格式1、設(shè)置行高和列寬2、數(shù)據(jù)字體的設(shè)置3、表格樣式的設(shè)置4、隱藏列5、凍結(jié)列3.4 數(shù)據(jù)的導(dǎo)入與導(dǎo)出3.4.1 導(dǎo)入、導(dǎo)出數(shù)據(jù)導(dǎo)入數(shù)據(jù) :使用導(dǎo)入操作可以將外部數(shù)據(jù)源數(shù)據(jù)變?yōu)閍ccess 格式。導(dǎo)出數(shù)據(jù) :導(dǎo)出數(shù)據(jù)是將access 數(shù)據(jù)庫中的表、查詢或報表復(fù)制到其它格式的數(shù)據(jù)文件中。3.4.2 鏈接數(shù)據(jù)鏈接數(shù)據(jù)就是在源數(shù)據(jù)和目標數(shù)據(jù)之間建立一個同步的影像,所有對外部數(shù)據(jù)源數(shù)據(jù)的改動都會及時地反映到目標數(shù)據(jù)庫中,同時如果在
30、access 2003 中對鏈接數(shù)據(jù)進行了修改也會同步反映到外部數(shù)據(jù)源數(shù)據(jù)中。操作方法:打開目標數(shù)據(jù)庫,選擇【文件】| 【獲取外部數(shù)據(jù)】| 【鏈接表】命令,在打開的對話框中,選擇需要鏈接的文件及相關(guān)選項。取消鏈接:在數(shù)據(jù)庫窗口中刪除鏈接表即可。第四章查詢4.1 查詢的種類與應(yīng)用4.2 查詢的建立方法4.3 查詢條件 4.4 查詢設(shè)計4.5 sql 查詢4.1 查詢的種類與應(yīng)用查詢 是 access 處理和分析數(shù)據(jù)的工具,它能夠把多個表中的數(shù)據(jù)抽取出來,供用戶查看、 更改和分析使用。4.1.1 查詢的種類1、選擇查詢 :選擇查詢可以從一個或多個表或者其他的查詢中獲取數(shù)據(jù),并按照所需要的排列次序顯
31、示,利用選擇查詢可以方便地查看一個或多個表中的部分數(shù)據(jù)。查詢的結(jié)果是一個數(shù)據(jù)記錄的動態(tài)集,用戶可以對動態(tài)集中的數(shù)據(jù)記錄進行修改、刪除,也可以增加新的記錄,對動態(tài)集所做的修改會自動寫入相關(guān)聯(lián)的表中。2、操作查詢 :操作查詢就是在一個操作中對查詢中所生成的動態(tài)集進行更改的查詢。操作查詢可以分為生成表查詢、追加查詢、 更新查詢和刪除查詢。操作查詢只能更改和復(fù)制用戶的數(shù)據(jù),而不能返回數(shù)據(jù)記錄。生成表查詢:可以利用從一個或多個表及查詢中的查詢結(jié)果創(chuàng)建一個新表。追加查詢:將查詢結(jié)果添加到現(xiàn)存的一個或多個表或者查詢的末尾。生成表查詢和追加查詢可以復(fù)制原有的數(shù)據(jù)。更新查詢:根據(jù)查詢中指定的條件,更改一個或多個
32、表中的記錄。刪除查詢:根據(jù)查詢中指定的條件,從一個或多個表中刪除相關(guān)記錄。更新查詢和刪除查詢可以更改現(xiàn)存的數(shù)據(jù)。3、sql 查詢sql 是一種結(jié)構(gòu)化查詢語言,是數(shù)據(jù)庫操作的工業(yè)化標準語言,使用sql 語言可以對任何數(shù)據(jù)庫管理系統(tǒng)進行操作。sql 查詢就是使用sql 語言創(chuàng)建的查詢,它又可以分為聯(lián)合查詢、傳精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 7 頁,共 40 頁 - - - - - - - - -遞查詢和數(shù)據(jù)定義查詢等。4、交叉表查詢:交叉表查詢可以匯總數(shù)據(jù)字段的內(nèi)容。在這種查詢中,匯總計算的結(jié)果顯示在行與列交叉的單元格中。交叉表查詢還可以
33、計算平均值、總計、最大值或最小值等。5、參數(shù)查詢 :參數(shù)查詢可以在運行查詢的過程中輸入?yún)?shù)值來設(shè)定查詢準則,而不必重新創(chuàng)建一個新查詢。參數(shù)查詢不是一種獨立的查詢,它擴大了其他查詢的靈活性。執(zhí)行參數(shù)查詢時,系統(tǒng)會顯示一個對話框提示輸入?yún)?shù)的值。4.1.2 查詢的應(yīng)用1、選擇字段在查詢中,可以只選擇表中的部分字段生成所需的多個表。2、選擇記錄根據(jù)指定的條件查詢表中的記錄。3、編輯記錄編輯記錄主要是添加記錄、修改記錄和刪除記錄等。4、 實現(xiàn)計算可以在查詢中進行各種統(tǒng)計計算,還可以建立一個計算字段來保存計算結(jié)果。5、利用查詢的結(jié)果生成窗體或報表6、利用查詢的結(jié)果創(chuàng)建表4.2 查詢的建立方法4.2.1
34、使用查詢向?qū)?.2.2 使用查詢設(shè)計器4.2.1 使用查詢向?qū)Ш唵尾樵兪菓?yīng)用最廣泛的一種查詢,它可以從一個或多個表、查詢中查找相關(guān)記錄。使用簡單查詢向?qū)?chuàng)建的查詢具有以下特點:不能添加選擇準則或者指定查詢的排序次序。不能改變查詢中字段的次序,字段將一直以第一個向?qū)υ捒蛑刑砑铀鼈儠r的順序出現(xiàn)。1、簡單查詢向?qū)В?)在數(shù)據(jù)庫窗口中,選擇【查詢】對象雙擊【使用向?qū)?chuàng)建查詢】,系統(tǒng)打開【簡單查詢向?qū)А康牡谝粋€對話框,如圖(2)在【表 /查詢】下拉列表框中選擇【表:學(xué)生】,學(xué)生表的所有字段都將出現(xiàn)在【可用字段】列表框中。(3)在【可用字段】列表框中選擇查詢字段并按按鈕將其添加到【選定的字段】列表框中,
35、也可以通過雙擊字段將其添加到【選定的字段】列表框中。重復(fù)步驟(2)和( 3) ,完成表中字段的添加。(4)單擊【下一步】按鈕,打開第二個向?qū)υ捒颍x擇是使用明細查詢還是使用匯總查詢。默認明細查詢。(5)單擊【下一步】按鈕,打開最后一個對話框,如圖在【請為查詢指定標題】文本框中,輸入查詢名字,單擊【完成】按鈕,在數(shù)據(jù)表視圖中顯示查詢結(jié)果。2、向?qū)У膮R總查詢(1)在數(shù)據(jù)庫窗口中,選擇【查詢】對象,雙擊【使用向?qū)?chuàng)建查詢】,系統(tǒng)打開【簡單查詢向?qū)А康牡谝粋€對話框;在【表/查詢】下拉列表框中選擇【表:學(xué)生】,添加學(xué)生表的“ 姓名 ”字段到【選定的字段】列表框中;在【表/查詢】下拉列表框中選擇【表:選
36、課成績】項,添加選課成績表的“ 成績 ” 字段到【選定的字段】列表框中,(2)單擊【下一步】按鈕,在打開的對話框中,選擇【匯總】選項,單擊【匯總選項】按鈕,打開對話框選中【匯總】、 【平均】、 【最小】和【最大】復(fù)選框分別計算學(xué)生的總成績、平均成績、最低成績和最高成績。選中【統(tǒng)計選課成績中的記錄數(shù)】復(fù)選框,為分組查詢添加一列,提供記錄計數(shù)。(3)單擊【確定】按鈕,返回第二個向?qū)υ捒?,然后單擊【下一步】按鈕,轉(zhuǎn)向第三個向?qū)υ捒颍瑸椴樵兠?。?)單擊【完成】按鈕,執(zhí)行該匯總查詢。結(jié)果如圖。4.2.2 使用查詢設(shè)計器在 access 2003 中,查詢有三種視圖:設(shè)計視圖、數(shù)據(jù)表視圖和sql
37、視圖。使用設(shè)計視圖,不僅可以創(chuàng)建各種類型的查詢,而且可以對已有的查詢進行修改。例如:要打開利用向?qū)?chuàng)建的“ 學(xué)生成績查詢” ,可在數(shù)據(jù)庫窗口中選中該查詢,然后單擊工具欄中的【設(shè)計】按鈕,結(jié)果如圖精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 8 頁,共 40 頁 - - - - - - - - -1、查詢設(shè)計視圖設(shè)計視圖的窗口分兩部分,上半部分顯示查詢所使用的表對象,下半部分定義查詢設(shè)計的表格。字段:選擇查詢中要包含的表字段。表:選擇字段的來源表。排序:定義字段的排序方式。顯示:設(shè)置是否在數(shù)據(jù)表視圖中顯示所選字段。條件:設(shè)置字段的查詢條件。或:用于設(shè)
38、置多條件之間的或條件。2、查詢設(shè)計視圖的工具欄3、創(chuàng)建查詢在設(shè)計視圖中創(chuàng)建查詢,首先應(yīng)單擊【顯示表】按鈕,在打開的【顯示表】對話框中選擇查詢所依據(jù)的表、查詢,并將其添加到設(shè)計視圖的窗口中。如果選擇多個表,多個表之間應(yīng)先建立關(guān)聯(lián)。例:利用學(xué)生、課程和選課成績表,創(chuàng)建一個不及格學(xué)生的成績查詢。(1)在【顯示表】對話框中,把學(xué)生、課程和成績表添加到設(shè)計視圖的窗口中。(2)依次拖入或在【字段】行中選擇“ 姓名 ” 、“ 課程名稱 ” 和“ 成績 ” 字段。(3)在【成績】列中的【條件】行中輸入條件“、=、=、。用關(guān)系運算符連接的兩個表達式構(gòu)成關(guān)系表達式,結(jié)果為一個邏輯值true 或者 false。連接
39、運算表達式連接運算符包括&和+。連接運算符具有連接字符串的功能。邏輯運算表達式邏輯運算符包括and、or、not。邏輯運算主要用于對真、假進行判斷。and 表示兩個操作數(shù)都為true 時,表達式的值才為true;or 表示兩個操作數(shù)只要有一個為true,表達式的值就為true ; not 表示取操作數(shù)的相反值。between and:用于指定一個字段值的取值范圍指定的范圍之間用and 連接。in:用于指定一個字段值的列表,列表中的任何一個值都可與查詢的字段相匹配。當表達式中包含的值較多時,使用in 運算符會使表達式更簡潔。is:指定所在字段中是否包含數(shù)據(jù),is null 表示查找該字段
40、沒有數(shù)據(jù)的記錄,is not null 表示查找該字段有數(shù)據(jù)的記錄。like:查找相匹配的文字,用通配符來設(shè)定文字的匹配條件。access 2003提供的通配符:?:代表任意一個字符* :代表任意多個字符# :代表任意一個數(shù)字位(0-9) 【字符表】:代表在字符表中的單一字符【!字符表】 :代表不在字符表中的單一字符可以使用一對方括號為字符串中該位置的字符設(shè)置一個范圍,如【0-9】 【a-z】4.3.2 標準函數(shù)1、求和函數(shù)格式: sum()功能:返回字段中值的總和。說明: “ 字符串表達式 ” 可以是一個字段名(數(shù)值類型),或者是含有數(shù)值類型字段的表達式。例如: sum(單價 * 數(shù)量)2、
41、求平均函數(shù)格式: avg()功能:求數(shù)值類型字段的平均值。說明: (1)“ 字符串表達式” 可以是一個字段名 (數(shù)值類型) ,或者是含有數(shù)值類型字段的表達式。(2)avg 不計算任何null 值字段。例如: avg(成績)3、統(tǒng)計記錄個數(shù)函數(shù)格式: count()功能:統(tǒng)計記錄個數(shù)。說明: (1)“ 字符串表達式” 可以是一個字段名 (數(shù)值類型) ,或者是含有數(shù)值類型字段的表達式。(2)當用格式count(* )時,將統(tǒng)計所有記錄的個數(shù),包括有null 值字段的記錄。例如: count(姓名)4、最大、最小值函數(shù)格式: max() min ()精品學(xué)習(xí)資料 可選擇p d f - - - - -
42、 - - - - - - - - - 第 10 頁,共 40 頁 - - - - - - - - -功能:返回一組指定字段中的最大、最小值。說明: “ 字符串表達式 ” 可以是一個字段名(數(shù)字類型),或者是含有數(shù)字類型字段的表達式。例如: max(成績)min (成績)4.4 查詢設(shè)計4.4.1 條件選擇查詢4.4.2 交叉表查詢4.4.3 參數(shù)查詢 4.4.4 操作查詢4.4.5 重復(fù)項、不匹配項查詢4.4.1 條件選擇查詢例:查詢中醫(yī)系1998 年 9 月 1 日入學(xué)的中醫(yī)專業(yè)的學(xué)生,顯示學(xué)生編號、姓名、性別、入學(xué)日期和系別。操作步驟:1、在 “ 教學(xué)管理 ” 數(shù)據(jù)庫窗口中,單擊【查詢】對
43、象,然后雙擊【在設(shè)計視圖中創(chuàng)建查詢】項,系統(tǒng)打開如圖所示的查詢設(shè)計視圖,同時在此視圖上面還出現(xiàn)一個【顯示表】對話框。2、在【顯示表】對話框中,把學(xué)生表添加到設(shè)計視圖上半部分的窗口中。3、分別雙擊 “ 學(xué)生編號 ” 、“ 姓名 ” 、“ 性別 ” 、“ 入校日期 ” 和“ 系別 ” 等字段,這時5 個字段將依次顯示在【字段】行上的第1 列到第 5 列中,同時【表】行將顯示出這些字段所在表的名稱,【顯示】行復(fù)選框均選中,代表查詢結(jié)果中顯示這些字段。但由于查詢要求顯示的字段沒有“ 專業(yè) ”字段,該字段僅作為查詢的一個條件,所以應(yīng)取消選中“ 專業(yè) ” 字段【顯示】行上的復(fù)選框,結(jié)果如圖4、在 “ 入校
44、日期 ” 字段列的【條件】行中可以輸入以下等價條件:date( 入學(xué)日期 )=1998-9-1 或者#1998-9-1# 在“ 系別 ” 和“ 專業(yè) ” 字段列的【條件】行中分別輸入條件:“ 中醫(yī) ” 和“ 中醫(yī) ” 。設(shè)計結(jié)果如圖:5、單擊工具欄中的【保存】按鈕,在出現(xiàn)的【另存為】對話框中,命名查詢?yōu)椤?學(xué)生信息查詢” ,然后單擊【確定】按鈕,保存創(chuàng)建的查詢。6、運行查詢,查看查詢結(jié)果。與( and)條件:或( or)條件:4.4.2 交叉表查詢交叉表查詢以行和列的字段作為標題和條件選取數(shù)據(jù),并在行和列的交叉處對數(shù)據(jù)進行匯總、統(tǒng)計計算等。設(shè)計交叉表查詢,需要指定3 種字段:一是放在數(shù)據(jù)表最左
45、端的行標題,它把某一字段或相關(guān)的數(shù)據(jù)放入指定的一行中;二是放在數(shù)據(jù)表最上邊的列標題,它對每一列指定的字段或表進行統(tǒng)計,并將統(tǒng)計結(jié)果放在該列中三是放在數(shù)據(jù)表行與列交叉位置上的字段,需要為該字段指定一個總計項,如sum、avg 和 count 等。對于交叉表查詢,只能指定一個總計類型的字段。1、使用向?qū)?chuàng)建交叉表查詢例:建立學(xué)生選課成績交叉表查詢(1)在 “ 教學(xué)管理 ” 數(shù)據(jù)庫窗口中,單擊【查詢】對象,再單擊【新建】按鈕,在【新建】查詢對話框中選擇交叉表查詢向?qū)А浚鐖D打開如圖所示的【交叉表查詢向?qū)А繉υ捒蛑?,在【視圖】選項組中選擇【查詢】單選按鈕,在上方的列表框中選擇 “ 學(xué)生成績查詢” 。
46、(2)單擊【下一步】按鈕,在向?qū)υ捒蛑羞x擇“ 姓名 ” 字段作為交叉表的行標題單擊【下一步】按鈕,選擇“ 課程名稱 ” 作為交叉表的列標題,如圖(3)單擊【下一步】 按鈕,為行和列的交叉點指定一個值。因為要顯示學(xué)生選課的成績,在【字段】列表框中選中“ 成績 ” ;在【函數(shù)】列表框中選擇一個總計函數(shù)由于所建交叉表只需顯示成績,不需做其它計算,所以選擇“ 第一項 ” ,并取消選中【是,包括各行小計】復(fù)選框,如圖精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 11 頁,共 40 頁 - - - - - - - - -(4)單擊【下一步】 ,為所創(chuàng)建的
47、交叉表查詢指定一個名字“ 交叉表成績查詢” ,單擊【完成】按鈕。創(chuàng)建交叉表查詢的運行結(jié)果2、在設(shè)計視圖下創(chuàng)建交叉表查詢例:在 “ 教學(xué)管理 ” 數(shù)據(jù)庫中,使用“ 學(xué)生 ” 、“ 課程 ” 和“ 選課成績 ” 表創(chuàng)建一個交叉表查詢,使其顯示每位學(xué)生各門課的成績。步驟: (1)在 “ 教學(xué)管理 ” 數(shù)據(jù)庫窗口中,單擊【查詢】對象,然后雙擊【在設(shè)計視圖中創(chuàng)建查詢】項,系統(tǒng)打開查詢設(shè)計視圖,同時在此視圖上面還出現(xiàn)一個【顯示表】對話框。(2)在【顯示表】對話框中,把“ 學(xué)生 ” 、“ 課程 ” 和“ 成績” 表添加到設(shè)計視圖上半部分的窗口中,然后關(guān)閉【顯示表】對話框。(3)分別雙擊學(xué)生表中的“ 姓名 ”
48、 字段、課程表中的“ 課程名稱 ” 字段和選課成績表中的“ 成績 ”字段,依次添加到【字段】行的第1 列到第 3 列。(4)單擊工具欄中的【查詢類型】按鈕,然后從下拉列表中選擇【交叉表】命令。(5)單擊 “ 姓名 ” 列的【交叉表】行單元格,選擇其下拉列表中的“ 行標題 ” 選項,使 “ 姓名 ” 放在每行的左邊;單擊“ 課程名稱 ” 列的【交叉表】行單元格,選擇其下拉列表中的“ 列標題 ” 選項,使“ 課程名稱 ” 放在第一行上;單擊“ 成績 ” 列的【交叉表】行單元格,選擇其下拉列表中的“ 值”選項,使在行列的交叉處顯示成績數(shù)值;單擊“ 成績 ” 列的【總計】行單元格,選擇其下拉列表中的
49、“ 第一條記錄 ” 函數(shù)。設(shè)計結(jié)果如圖:(6)保存與運行創(chuàng)建的交叉表查詢,結(jié)果如圖4.4.3 參數(shù)查詢參數(shù)查詢可以在運行查詢的過程中根據(jù)參數(shù)輸入值自動設(shè)定查詢的準則,用戶在執(zhí)行參數(shù)查詢時會顯示一個輸入對話框以提示用戶輸入信息,這種查詢叫做參數(shù)查詢。當需要對某個字段進行參數(shù)查詢時,首先切換到這個查詢的設(shè)計視圖,然后在作為參數(shù)使用的字段下的“ 條件 ” 單元格中的方括號內(nèi)輸入相應(yīng)的提示文本,此查詢運行時,access 2003 將顯示該提示。參數(shù)查詢是建立在選擇查詢或交叉表查詢的基礎(chǔ)之上的,如果希望根據(jù)某個或某些字段的不同值來查找記錄,就可以使用參數(shù)查詢。在參數(shù)查詢中,可以建立單參數(shù)查詢,也可以建
50、立多參數(shù)查詢。例:以學(xué)生、課程和成績表為數(shù)據(jù)源,查詢某班級、某門課程和某分數(shù)之上的學(xué)生選課情況假定學(xué)生編號的前4 位為班級號碼。步驟: (1 )在 “ 教學(xué)管理 ” 數(shù)據(jù)庫窗口中,單擊【 查詢】對象,然后雙擊【在設(shè)計視圖中創(chuàng)建查詢】,打開查詢設(shè)計視圖,同時顯示【顯示表】對話框。(2 )在【顯示表】對話框中,把“ 學(xué)生 ” 、“ 課程” 和 “ 選課成績 ” 表添加到設(shè)計視圖上半部分的窗口中,然后關(guān)閉【顯示表】對話框。(3 )分別雙擊學(xué)生表中的“ 學(xué)生編號 ” 和“ 姓名 ” 字段、課程表中的“ 課程名稱 ” 字段和成績表中的“ 成績 ” 字段,依次添加到【字段】行的第 1 列到第 4 列。(4
51、)在【字段】行的第1 列單元格中,把“ 學(xué)生編號 ” 字段名改為 “ 班級: left(學(xué)生!學(xué)生編號, 4)” ,在 【條件】行單元格輸入“ 輸入班級: ” 。其含義是:在查詢結(jié)果中,顯示別名“ 班級” ,取每個記錄“ 學(xué)生編號 ” 字段值的前4 位與 “ 輸入班級 ” 參數(shù)值進行比較,確定是否是要查詢的班級。(5)單擊工具欄中的【視圖】按鈕,或單擊工具欄中的【運行】按鈕,系統(tǒng)將依次顯示輸入班級的【輸入?yún)?shù)值】 對話框, 可以根據(jù)需要輸入?yún)?shù)值,查詢需要的班級所選課程的成績信息。4.4.4 操作查詢1、生成表查詢:用查詢結(jié)果集中的數(shù)據(jù)創(chuàng)建新表。從表中查詢數(shù)據(jù)要比從查詢中訪問數(shù)據(jù)快,如果經(jīng)常需
52、要從多個表中提取數(shù)據(jù),最好的辦法使用生成表查詢,即從多個表中提取數(shù)據(jù)組合起來生成一個新表永久保存。2、刪除查詢:用于從表中刪除與查詢結(jié)果集中的行相對應(yīng)的記錄。3、追加查詢:把查詢結(jié)果添加到另一個表,但要注意兩者之間的格式與類型要相同。4、更新查詢:根據(jù)查詢結(jié)果集中的行改變表中現(xiàn)有記錄的相應(yīng)字段的值。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 12 頁,共 40 頁 - - - - - - - - -1、創(chuàng)建生成表查詢例:將學(xué)生選課成績在90 分以上的學(xué)生信息保存到一個新表中。步驟: (1)打開查詢設(shè)計器,將“ 學(xué)生 ” 、“ 課程 ” 、“ 選課
53、成績 ” 表添加到窗口中。(2)單擊【查詢類型】按鈕或選擇【查詢】|【生成表查詢】命令,打開如圖所示的【生成表】對話框。在對話框中輸入新表名稱,并選擇保存位置。(3)在查詢設(shè)計視圖中設(shè)置所需的各個選項,與選擇查詢設(shè)計相同,結(jié)果如圖(4)保存所做的設(shè)置,單擊【運行】按鈕,系統(tǒng)會彈出【創(chuàng)建新表】對話框,通過選擇“ 是 /否” 向新表粘貼記錄,確定是否創(chuàng)建新表。2、創(chuàng)建刪除查詢刪除查詢可以從表中刪除符合條件的記錄,且所做的刪除操作無法撤銷。刪除查詢可以從單個表中刪除記錄,也可以從多個相互關(guān)聯(lián)的表中刪除記錄。如果要從多個表中刪除相關(guān)記錄,多個表之間必須滿足以下條件:在【關(guān)系】窗口定義相關(guān)表之間的關(guān)系,
54、在【關(guān)系】窗口中選中【實施參照完整性】復(fù)選框與【級聯(lián)刪除相關(guān)記錄】復(fù)選框。例:將學(xué)生選課成績在60 分以下的記錄刪除。步驟: (1)打開查詢設(shè)計視圖,將“ 選課成績 ” 表添加到窗口中。(2)單擊【查詢類型】按鈕,從下拉菜單中選擇【刪除查詢】命令。(3)單擊 “ 選課成績 ” 字段列表中的 “*”號,并將其拖到【字段】行的第1 列上,第1列將顯示“ 選課成績 .* ” ,同時,在該字段【刪除】單元格中顯示from,表示從何處刪除記錄。(4)將 “ 選課成績 ” 字段拖到【字段】行的第2 列上,同時,在該字段【刪除】單元格中顯示where,表示要刪除哪些記錄。在該字段的【條件】單元格中輸入條件:
55、60。結(jié)果如圖(5)單擊工具欄中的【視圖】按鈕,可以先預(yù)覽要刪除的記錄,若不是要刪除的記錄,可以返回查詢設(shè)計視圖修改查詢條件;若是要刪除的記錄,可以單擊工具欄中的【運行】按鈕,這時系統(tǒng)打開【確認刪除】對話框,單擊【是】按鈕,將從成績表中永久刪除查詢到的記錄。3、創(chuàng)建追加查詢生成表查詢用查詢選擇的字段創(chuàng)建新表結(jié)構(gòu),然后寫入查詢記錄。而追加查詢是對原數(shù)據(jù)庫表進行追加記錄的操作,它提供了一個不用到表中就可以增加記錄的方法。例: 利用追加查詢將選課成績在8090 分之間的學(xué)生追加到已建立的“90 分以上學(xué)生情況” 表中。步驟: (1)打開查詢設(shè)計視圖,將“ 學(xué)生 ” 表和 “ 選課成績 ” 表添加到窗
56、口中。(2)單擊【查詢類型】按鈕,從下拉菜單中選擇【追加查詢】命令,彈出如圖所示【追加】對話框。在【表名稱】下拉列表框中輸入要追加記錄的表:90 分以上學(xué)生情況,單擊【確定】按鈕,這時查詢設(shè)計視圖中就添加了一個【追加到】行。(3)設(shè)置需要追加到目標表的各個選項,在【追加到】一欄中選擇目標表對應(yīng)的字段,結(jié)果如圖:(4)單擊【視圖】按鈕,可以查看要追加的記錄。確認無誤后,單擊【運行】按鈕,系統(tǒng)會彈出追加記錄提示框,單擊【是】按鈕,將選擇記錄追加到目標表中。4、創(chuàng)建更新查詢更新查詢可以改變表中記錄的數(shù)據(jù)值。當需要用相同表達式更新許多記錄的字段值時,這種查詢是很有用的。要更新的記錄就是查詢中通過設(shè)置條
57、件所查詢到的記錄。例:在選課成績表中,把所有選課成績不及格的“ 成績 ” 字段值置為0。步驟:(1 )打開查詢設(shè)計視圖,將“ 選課成績 ” 表添加到窗口中。(2 )單擊【查詢類型】按鈕,從下拉菜單中選擇【 更新查詢】命令,這時查詢設(shè)計視圖中添加了一個【更新到】行。(3)單擊 “ 選課成績 ” 字段列表中的“ 成績 ” 字段,并將其拖到【字段】行的第1列上,在【更新到】一行輸入數(shù)值:0,在【條件】行輸入更新條件:60。如圖(4)單擊【視圖】按鈕,可以查看要更新的記錄。確認無誤后,單擊執(zhí)行查詢按鈕,系統(tǒng)會彈出更新提示框,單擊【是】按鈕,將完成對成績表中選課成績不及格記錄的“ 成績 ” 字段更新。精
58、品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 13 頁,共 40 頁 - - - - - - - - -4.4.5 重復(fù)項、不匹配項查詢1、創(chuàng)建查找重復(fù)項查詢在數(shù)據(jù)表中,除設(shè)置為主鍵的字段不能重復(fù)外其他字段允許有重復(fù)值。例:查找成績表中每門課被學(xué)生選修的情況。利用向?qū)?chuàng)建查找重復(fù)項查詢(1)在新建查詢對話框中,選擇【查找重復(fù)項查詢向?qū)А吭谙驅(qū)υ捒蛑羞x擇所基于的表或查詢(2)選取設(shè)為重復(fù)值的字段,系統(tǒng)會按照選取的字段自動對數(shù)據(jù)表中的記錄進行檢索。(3)選擇另外查詢的字段(4)為查詢指定一個名字,單擊【完成】按鈕2、建立不匹配查詢不匹配查詢就是在一個表
59、中搜索另一個表中沒有相關(guān)記錄的記錄行。例:查找課程表中沒有被學(xué)生選修的課程有哪些。利用向?qū)?chuàng)建查找不匹配項查詢(1)在新建查詢對話框中,選擇【查找不匹配項查詢向?qū)А吭谙驅(qū)υ捒蛑羞x擇所基于的表或查詢(2)選擇不包含匹配記錄的表(3)選擇在兩個表中的匹配字段(4)為查詢指定一個名字后,單擊【完成】按鈕4.5 sql 查詢sql 包括數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)操縱和數(shù)據(jù)控制4 個部分,是一種功能齊全的數(shù)據(jù)庫語言。 sql 有兩種使用方法:一種是以與用戶交互的方式聯(lián)機使用,另一種是作為子語言嵌入到其他程序設(shè)計語言中使用。4.5.1 sql 的數(shù)據(jù)定義sql 的數(shù)據(jù)定義功能是指定義數(shù)據(jù)庫的結(jié)構(gòu),包括定義
60、基本表、 定義視圖和定義索引3 個部分。由于視圖是基于基本表的虛表,索引是依附于基本表的,因此 sql 通常不提供修改視圖定義和修改索引定義的操作。如果想修改視圖定義和修改索引定義,只能先將它們刪除,然后再重建。sql 的數(shù)據(jù)定義語句1、定義基本表命令: create table 格式:create table ( 列級完整性約束條件 列級完整性約束條件 )2、修改基本表命令: alter table 格式:alter table add 完整性約束條件 drop modify 3、刪除基本表命令: drop table 格式:drop table 4.5.2 sql 的數(shù)據(jù)操縱數(shù)據(jù)操縱是指對表中的數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞務(wù)派遺合同范本
- 養(yǎng)殖社購銷合同范本
- 借條正規(guī)合同范本
- 公司網(wǎng)絡(luò)線路維修合同范本
- 加工蔬菜采購合同范本
- 利益聯(lián)結(jié)機制合同范本
- 出租專用桌子合同范本
- 與社區(qū)合作社簽訂合同范例
- 二手房按揭買賣合同范本
- 公司許可經(jīng)營合同范本
- 2024年山東力明科技職業(yè)學(xué)院高職單招數(shù)學(xué)歷年參考題庫含答案解析
- 譯林版小學(xué)英語四年級上冊單詞表(分單元含音標)
- 2025年江蘇無錫市屬國有企業(yè)招聘筆試參考題庫含答案解析
- 廣州市小學(xué)六年級上英語單詞
- 武漢市2024-2025學(xué)年度高三元月調(diào)考歷史試題卷(含答案)
- 《慢性腎臟病相關(guān)心肌病綜合管理中國專家共識(2024版)》解讀
- DCMM解析版練習(xí)試題附答案
- 《工程建設(shè)質(zhì)量信得過班組建設(shè)活動準則》
- 金融企業(yè)會計第八章證券公司業(yè)務(wù)的核算
- 2024下半年上海事業(yè)單位招考易考易錯模擬試題(共500題)試卷后附參考答案
- 網(wǎng)絡(luò)安全風(fēng)險評估行業(yè)研究報告
評論
0/150
提交評論