java編程(JDBC數(shù)據(jù)庫編程-1-數(shù)據(jù)庫基礎)課案_第1頁
java編程(JDBC數(shù)據(jù)庫編程-1-數(shù)據(jù)庫基礎)課案_第2頁
java編程(JDBC數(shù)據(jù)庫編程-1-數(shù)據(jù)庫基礎)課案_第3頁
java編程(JDBC數(shù)據(jù)庫編程-1-數(shù)據(jù)庫基礎)課案_第4頁
java編程(JDBC數(shù)據(jù)庫編程-1-數(shù)據(jù)庫基礎)課案_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Java程序設計課堂筆記計算機科學與工程系14/12第10章數(shù)據(jù)庫編程-10.11知識點1.1上次內(nèi)容1. 10操作實例1.2習題講解1. 無1.3本次內(nèi)容1. 數(shù)據(jù)庫基礎2. Access數(shù)據(jù)庫3. 表4. 查詢2具體內(nèi)容10.1數(shù)據(jù)庫基礎10.1.1數(shù)據(jù)庫基本概念:4D數(shù)據(jù)(DATA):存放在數(shù)據(jù)庫中的信息內(nèi)容。數(shù)據(jù)庫(DATABASE):具體數(shù)據(jù)庫管理系統(tǒng)中的某一個數(shù)據(jù)庫。數(shù)據(jù)庫管理系統(tǒng)(DBMS) : SQL Server、Oracle、DB2、MySQL、Access 等 數(shù)據(jù)庫系統(tǒng)(DBS):學生信息管理系統(tǒng)、教務管理系統(tǒng)等。10.1.2數(shù)據(jù)庫基本概念:數(shù)據(jù)模型層次模型:層次模型只

2、有一個根節(jié)點數(shù)據(jù)庫基礎二維表”表示數(shù)據(jù))網(wǎng)狀模型:它表示多個從屬關(guān)系的層次結(jié)構(gòu),呈現(xiàn)一種交叉關(guān)系的網(wǎng)絡結(jié)構(gòu) 關(guān)系模型(Relational Model ):按照某種平行序列排列的數(shù)據(jù)集合關(guān)系。(用面向?qū)ο竽P?0.1.3數(shù)據(jù)庫基本概念:三級模式體系結(jié)構(gòu)外部級、概念級、內(nèi)部級 外模式、模式、內(nèi)模式10.2 Access 數(shù)據(jù)庫Access是微軟公司的 Microsoft Office系列軟件的一個重要組成部分。它是一個運行于Windows平臺上的關(guān)系數(shù)據(jù)庫管理系統(tǒng),通過各種數(shù)據(jù)庫對象對數(shù)據(jù)進行控制和管理。Access數(shù)據(jù)庫中包括表、查詢、窗體、報表、數(shù)據(jù)訪問頁、宏和模塊7種不同的對象,這些對象用

3、于收集、存儲、檢查和鏈接各種不同的信息。Access 2000的主要功能如下所述。定義表。定義表之間的關(guān)系。強大的數(shù)據(jù)處理能力。創(chuàng)建Web頁。 開發(fā)應用程序。Access提供了創(chuàng)建數(shù)據(jù)庫、表、查詢、窗體、報表和數(shù)據(jù)訪問頁等數(shù)據(jù)庫對象的向?qū)Аccess還提供了管理大量數(shù)據(jù)所需要的數(shù)據(jù)定義、數(shù)據(jù)操作和數(shù)據(jù)控制功能。Access支持ODBC (開放式數(shù)據(jù)庫連接)特性,用戶能訪問許多外部數(shù)據(jù)庫(如Oracle和Sybase)的數(shù)據(jù)。10.3 表表(Table)是數(shù)據(jù)庫的第一個對象,主要用于數(shù)據(jù)存儲。是一種有關(guān)特定實體的數(shù)據(jù)的集合,表以行(Record,即記錄)列(Field,即字段)格式組織數(shù)據(jù)。表

4、中的字段用來描述實體的屬性,記錄用來描述一個實體的完整信息。在Access數(shù)據(jù)庫中,至少要含有一個表對象。10.3.1表的構(gòu)成在Access中,表都是以二維表的形式構(gòu)成的,是由表文件名、表中的字段屬性、表中的記錄3部分構(gòu)成的。商品編號商品名稱商品類型商品品質(zhì)規(guī)格備注BH0101奇奇洗衣粉百貨高750g略BH0102奇奇香皂百貨高125g略BH0103多多透明皂百貨高125g*4略BH0104多多洗發(fā)露百貨高400ml略10.3.2ACCESS 字段數(shù)據(jù)類型(DataType)10.3.3字段采用不同的數(shù)據(jù)類型其存儲空間、取值范圍就不同,選擇合適的數(shù)據(jù)類型可以節(jié)省存儲空 間、提高運算效率。在Ac

5、cess系統(tǒng)中,字段數(shù)據(jù)類型分為以下幾種:1. 文本型2. 備注型3. 數(shù)字型4. 日期/時間型5. 貨幣型6. 自動編號型7. 是/否型8.OLE對象型9. 超級鏈接型10. 查閱向?qū)?0.3.3字段屬性的定義不同的數(shù)據(jù)類型有不同的屬性1. 設置字段的大小2. 默認值屬性3. 標題屬性(顯示窗口顯示的字段名)4. 格式屬性5. 輸入掩碼屬性設置6. 有效性規(guī)則屬性設置10.3.4表結(jié)構(gòu)的創(chuàng)建i使用數(shù)據(jù)表視圖創(chuàng)建表:不能完全滿足我們對數(shù)據(jù)類型的要求2使用表向?qū)?chuàng)建表:用于比較通用的場合3使用設計視圖創(chuàng)建表打開設計視圖確定字段及類型定義主關(guān)鍵字保存4利用系統(tǒng)提供的導入及鏈接功能導入 將數(shù)據(jù)導入

6、到當前的數(shù)據(jù)庫的表中鏈接 將數(shù)據(jù)保留在其當前位置,用本地的數(shù)據(jù)管理器使用,但不進行數(shù)據(jù)導入操作10.3.5表中數(shù)據(jù)的輸入雙擊表則打開了“表”瀏覽窗口,在“表”瀏覽窗口,可以給表輸入數(shù)據(jù)可以維護表中的數(shù)據(jù)。F20E03HZDL01 tmioeHZ02O3H2OSMHZO3E spotoaspoioeBHOiOi! BHDLOg SM01O3BWLC4DQOim 岡HO2MOLCMLMOaiSW03CJ5F201OI竝JfXL43 lODg奇奩看皂 麥寥遴明皂aBffifi iaaaa品馬現(xiàn)格備注20 卜A卜*1扶育記錄毅:20商品:表鳥稱 I 畫型陡高髙中貨播貨我爲罄匝誥卷撫嫁垠妝臨抵由妝品品品

7、 白百電電電電電鋼帥站冷出憂出憂吉衣ft750e 12S1 125tf*4 如 Dihl 172*141*33 啖寸500像第 30確索S 2 1 5 1“表”瀏覽窗口,如圖所示:5S晶數(shù)碼電諷肌 車載港品電規(guī)機 翟虹數(shù)瑪stasL dvb數(shù)碼照相機 門播BS3S活力尅衣奇勝襯在 陽光括扶洞白乳 P日光香水綠邑植物沬秸霜 另士吞水 月高詵;面奶10.3.5表操作1、數(shù)據(jù)的修改、復制、刪除、查找、替換2、記錄定位3、記錄排序4、記錄篩選10.3.6建立表間關(guān)聯(lián)(一)表間關(guān)聯(lián)關(guān)系類型i一對一關(guān)系2. 對多關(guān)系3多對多關(guān)系(二)建立索引1. 索引概念索引是按索引字段或索引字段集的值使表中的記錄有序排

8、列的一種技術(shù),在Access中,通常是借助于索引文件來實現(xiàn)記錄的有序排列。2. 索引類型唯一索引:索引字段的值是不能相同, 即沒有重復值。若給該字段輸入重復值,系統(tǒng)會提示操作錯誤, 若已有重復值的字段要創(chuàng)建索引,不能創(chuàng)建唯一索引。普通索引:索引字段的值是可以相同,即有重復值。主索引:在Access中,同一個表可以創(chuàng)建多個唯一3. 創(chuàng)建索引(三)創(chuàng)建表間關(guān)聯(lián)1、創(chuàng)建表間關(guān)聯(lián)前題一是要保障建立關(guān)聯(lián)關(guān)系的具有相同的字段;二是以該字段建立索引。2、區(qū)分主表與子表(四)、實施參照完整性理論上一定要有參照完整性。選取了實施參照完整性后,對表中主關(guān)鍵字段值操作時系統(tǒng)將自動檢是否保證數(shù)據(jù)完整性。具體包括:1、

9、級聯(lián)更新相關(guān)2、級聯(lián)刪除相關(guān)字段10.3.7使用子表操作步驟如下:(1)打開數(shù)據(jù)庫,打開“父”表。(2)在“數(shù)據(jù)庫”窗口,打開“插入”菜單,選擇“子數(shù)據(jù)表”命令。(3)在“插入子數(shù)據(jù)表”窗口,添加子表或先建立表間關(guān)聯(lián)。(4) 在“表”瀏覽窗口,雙擊按鈕或 按鈕,可以打開或關(guān)閉“子”表。(5)在“數(shù)據(jù)庫”窗口,打開“格式”菜單,選擇“子數(shù)據(jù)表”命令,可以刪除“子”表與“父”表 的嵌套關(guān)系10.4查詢查詢(Query)是Access的重要組成部分。它是對數(shù)據(jù)庫中數(shù)據(jù)的直接訪問。在Access中可以利用 QBE ( Query By Example )圖形化查詢工具來創(chuàng)建查詢,也可以通過SQL語句建

10、立查詢。查詢種類很多,其中選擇查詢是最常見的一種查詢的功能:查詢可以重組表中的數(shù)據(jù);實現(xiàn)算功能;建立基于查詢的報表和窗體等。10.4.1表達式常量、變量函數(shù)運算符表達式一、選擇查詢:查詢數(shù)據(jù)源,可以是一個表、多個表或查詢 選擇查詢種類:1. 一般選擇查詢2. 創(chuàng)建查詢進行運算A、預定義計算B、用戶自定義計算(添加計算字段)二、參數(shù)查詢:參數(shù)查詢是選擇查詢的一種特殊形式,是把選擇查詢的準則設置成一個帶有隨機性參數(shù)的通用準則1. 創(chuàng)建單參數(shù)查詢2. 創(chuàng)建多重參數(shù)查詢?nèi)?、操作查?操作查詢包括:生成表查詢刪除查詢更新查詢追加查詢四、交叉表查詢交叉表查詢以一種其它查詢方式無法實現(xiàn)的獨特概括形式返回一個

11、或多個表內(nèi)的匯總數(shù)字,便于 用戶的分析和使用。具體操作方法是:用某一字段做行標題、某一字段作列標題,交叉分析某一數(shù)字型字段值。五、結(jié)構(gòu)化查詢語言 SQL ( Structured Query Language)SQL語言是一個非過程化語言SQL語言是1974年由Boyce和Chamberlin提出的1986年被批準成為關(guān)系型數(shù)據(jù)庫語言的標準。 功能強大:數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)控制。支持三級模式結(jié)構(gòu)View (視圖)=外模式Table(表)=模式存儲文件=內(nèi)模式SQL功能有:數(shù)據(jù)定義:Create, Alter, Drop數(shù)據(jù)查詢:Select數(shù)據(jù)操縱:Insert, Update,

12、 Delete數(shù)據(jù)控制:Grant, RevokeSQL語言的數(shù)據(jù)操縱功能Select語句是最頻繁使用的查詢語句范例:SELECT * From 表名 where xb=男or 職稱 教授SQL語言的數(shù)據(jù)定義功能1創(chuàng)建表CREATE TABLE 表名 ( 字段名1類型(長度),字段名2類型(長度),字段名3類型(長度),、) 類型:文本型(TEXT )、長整型(INTEGER )、雙精度型(FLOAT )、貨幣型(MONEY )、日期型(DATE )、 備注型(MEMO )范例:利用SQL語句創(chuàng)建學生情況表create table b (xm text (6),xb text (1),csyq

13、 date)2、給表再增加字段ALTER TABLE 表名 ADD字段名1類型(長度)、字段名2類型(長度),、 范例alter table a add bz memo10.4.1基本查詢語句(投影查詢)i基本查詢語法格式:【格式】SELECT ALL | DISTINCT 字段列表FROM 表 【功能】無條件查詢【說明】ALL :表示顯示全部查詢記錄,包括重復記錄。DISTINCT :表示顯示無重復結(jié)果的記錄2、選擇查詢語句【格式】SELECT 字段列表FROM 表 WHERE 條件 【功能】有條件查詢【說明】在該條件中除了可以用關(guān)系表達式外,還可以使用以下運算符1. BETWEEN AND

14、 2. IN3. LIKE范例1:顯示學生選課及成績表中考試成績在60-80之間的所有記錄。SELECT * FROM學生選課及成績表WHERE 考試成績 BETWEEN 60 AND 80范例2:顯示學生選課及成績表中考試成績?yōu)?5、88、90的所有記錄。SELECT* FROM學生選課及成績表WHERE 考試成績 IN (85,88,90)范例3:顯示學生信息表中的所有”王”姓同學,只顯示姓名和性別字段SELECT 姓名,性別 FROM學生信息表WHERE 姓名 like 王* ”注:” *表示可與一串字符匹配,” ?”示可與一個字符匹配3、排序查詢通過在SELECT命令中加入 ORDER

15、 BY子句可控制行的顯示順序。ORDER BY可以按升序(默認或ASC )、降序(DESC)排列各行,也可以按多個列來排序。注意:該子句必須是 SELECT命中的最后一個子句【格式】SELECT FROM WHERE ORDER BY排序字段列表 DESC/ASC范例:將學生選課及成績表中的考試成績字段按降序排列。SELECT * FROM 學生選課及成績表ORDER BY考試成績DESC4、使用聚合函數(shù)聚合函數(shù)用于實現(xiàn)數(shù)據(jù)統(tǒng)計等功能.access中提供的聚合函數(shù)有AVG(),COUNT(),MIN(),MAX()SUM()等。范例:查詢”計算機網(wǎng)絡”班的學生人數(shù)。Select count(*

16、) from 學生信息表 where所在班級=計算機網(wǎng)絡”或Select count (學號)from 學生信息表 where所在班級=計算機網(wǎng)絡”范例:查詢編號為” C01”勺課程的考試成績的平均分。select avg(考試成績)as平均分from 學生選課及成績表 where課程號=C01110.5 Access 創(chuàng)建步驟10.5.1創(chuàng)建數(shù)據(jù)庫文件【操作步驟】1、開始菜單2、文件菜單3、文件菜單所有程序Microsoft Office Microsoft Access 2003/2007/2010新建空數(shù)據(jù)庫保存選擇保存位置命名保存文件10.5.2創(chuàng)建表并設置字段屬性【操作步驟】(200

17、7/2010版本)1、【創(chuàng)建表】創(chuàng)建菜單表在右下角界面中為表添加相應的字段,并選擇數(shù)據(jù)類型點擊【保存】按鈕命名保存的表的名字。2、 【設置主鍵】 左側(cè)所有表中右鍵單擊對應的表名稱設計視圖 在打開的表編輯窗口中選中需要設置為主鍵的字段 點擊工具欄中的主鍵按鈕(或右鍵選擇主鍵)。3、 【設置字段屬性】 左側(cè)所有表中右鍵單擊對應的表名稱設計視圖 在打開的表編輯窗口中選中需 要設置為的字段 在下方字段屬性窗口中對該字段屬性進行編輯。10.5.3添加數(shù)據(jù)【添加表數(shù)據(jù)】 左側(cè)所有表中雙擊需要添加數(shù)據(jù)的表在打開的表界面中輸入數(shù)據(jù)。10.5.4使用查詢【查詢】創(chuàng)建菜單 查詢分類 查詢向?qū)?查詢設計【查詢向?qū)А?/p>

18、創(chuàng)建菜單查詢分類查詢向?qū)Ш唵尾樵兿驅(qū)Т_定選擇要查詢的表選擇需要查詢輸岀的字段下一步為查詢命名完成?!静樵冊O計】創(chuàng)建菜單查詢分類查詢設計選擇需要查詢的表可選擇此時操作的視圖(視圖工具欄數(shù)據(jù)表視圖、數(shù)據(jù)透視表圖、數(shù)據(jù)透視圖視圖、SQL視圖、設計視圖)SQL視圖:可根據(jù)設計視圖操作自動生成 SQL代碼,也可以自己編寫 SQL代碼進行查詢3本次小結(jié)數(shù)據(jù)庫基礎5課堂作業(yè)Access數(shù)據(jù)庫實驗內(nèi)容一、Access的基本練習1. 學習Access的啟動和退出;2. 通過上機熟悉 Access的用戶界面(包括 Access窗口和數(shù)據(jù)庫窗口的組成);二、數(shù)據(jù)庫的創(chuàng)建1. 在D盤上創(chuàng)建一個名為 ABC的文件夾;2

19、. 使用“創(chuàng)建空數(shù)據(jù)庫”的操作方法在D盤的ABC文件夾下創(chuàng)建一個 student.Mdb數(shù)據(jù)庫;三、表的創(chuàng)建1在上述所建數(shù)據(jù)庫中創(chuàng)建如下三張數(shù)據(jù)表:學生表、課程表、成績表?!皩W生”表(結(jié)構(gòu))字段名學號姓名性別岀生日期專業(yè)類型文本文本文本日期/時文本大小46216“學生”表(數(shù)據(jù))學號姓名性別岀生日期專業(yè)2001王云浩男1963年3月6日計算機信息管理2002劉小紅女1965年5月18日國際貿(mào)易2003陳蕓女1963年2月10日國際貿(mào)易2101徐濤男1964年6月15日計算機信息管理2102張春暉男1966年8月27日電子商務2103祁佩菊女1970年7月11日電子商務“課程”表(結(jié)構(gòu))字段名課

20、程號課程名學時數(shù)學分類型文本文本數(shù)字數(shù)字大小316整型整型“課程”表(數(shù)據(jù))課程號課程名學時數(shù)學分501大學語文704502高等數(shù)學905503基礎會計學804“成績”表(結(jié)構(gòu))字段名學號課程號成績類型文本文本數(shù)字大小43單精度“成績”表(數(shù)據(jù))學號課程號成績200150188200150277200150379200250192200250291200250393200350185200350293200350366210150181210150296210150375210250172210250260210250388210350195210350294210350380【操作步驟】(1

21、) 在“數(shù)據(jù)庫”窗口中,單擊“創(chuàng)建”欄下的“表格”,然后單擊“表設計”快捷按鈕。(2) 彈岀表“設計視圖”對話框,在“字段名稱”列中輸入字段名,在“數(shù)據(jù)類型”列中選擇數(shù)據(jù) 類型。(3) 在窗口下部的“字段屬性”區(qū)中,利用“常規(guī)”選項卡設置字段大小。2將學生表的“學號”字段定為主鍵,課程表的“課程號”定為主鍵,成績表使用學號和課程號的組合作 為主鍵。【操作步驟】(1) 在學生表的設計視圖下,單擊學號所在的行,再單擊“工具欄”上的主鍵按鈕;(2) 在課程表的設計視圖下,單擊課程號所在的行,再單擊“工具欄”上的主鍵按鈕;(3) 在成績表的設計視圖下,按下Shift鍵分別單擊學號和課程號所在的行,再單

22、擊“工具欄”上的 主鍵按鈕;3向表中輸入數(shù)據(jù)?!静僮鞑襟E】(1) 在數(shù)據(jù)庫窗口中雙擊要輸入數(shù)據(jù)的表,進入“數(shù)據(jù)表”視圖。(2) 在“數(shù)據(jù)表”視圖中可進行數(shù)據(jù)的輸入。4. 建立上述三個表之間的關(guān)系,在建立過程中要求選擇“實施參照完整性”?!静僮鞑襟E】(1) 雙擊數(shù)據(jù)庫中的某一個表,如學生表,打開數(shù)據(jù)表格以顯示菜單欄中的表格工具。(2) 選擇表格工具下的“表”,單擊工具欄上的“關(guān)系”按鈕,打開“關(guān)系”窗口;同時岀現(xiàn)“顯示 表”對話框,其中將有上述所建的三個表。(3) 分別雙擊“學生”表、“成績”表和“課程”表;然后關(guān)閉“顯示表”對話框。(4) 用鼠標按住“學生”表中的“學號”(主鍵),將其拖動“成

23、績”表的“學號”(外鍵)上;在彈岀的“編輯關(guān)系”對話框中選擇“實施參照完整性”,然后單擊“確定”按鈕。(5) 再用鼠標按住“課程”表中的“課程號”(主鍵),將其拖動“成績”表的“課程號”(外鍵)上;在彈岀的“編輯關(guān)系”對話框中選擇“實施參照完整性”,然后單擊“確定”按鈕。四、使用用設計視圖對 student.mdb數(shù)據(jù)庫建立相關(guān)查詢對象。1 根據(jù)以下要求創(chuàng)建一個名為“一般選擇查詢”的選擇查詢對象。(1) 查詢所有同學的有關(guān)基本信息和考試成績。(2) 查詢顯示字段為:學號、姓名、年齡、課程號、課程名、成績?!静僮鞑襟E】(1) 按F11鍵切換到“所有 Access對象”窗口。(2) 在“數(shù)據(jù)庫”窗口中,單擊“創(chuàng)建”欄下的“查詢”,然后單擊“查詢設計”快捷工具,此時岀現(xiàn)“設計”窗口和“顯示表”對話框,“顯示表”對話框中顯示上述所建的三個數(shù)據(jù)表。(3) 分別雙擊三個表,將它們添加到查詢“設計”窗口中作為查詢數(shù)據(jù)源,然后關(guān)閉“顯示表”對 話框。(4) 使用設計器創(chuàng)建多表查詢必須建立關(guān)系,如果還沒有建立,則需要建立表間關(guān)系。(5) 向查詢中添加字段:分別雙擊要添加的字段,或使用鼠標將要添加的各個字段分別拖動到“字段” 一行的不同單元格中(本例添加的字段是學號、姓名、課程號、課程名、成績)。(

溫馨提示

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

評論

0/150

提交評論