版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第五章JDBC數據庫編程基礎知識數據庫開發(fā)在當前的Web開發(fā)與應用中占有著十分重要的地位,信息科技進步的日新月異,實際應用基本都是對數據的保存,加工和處理,所以應用軟件的開發(fā)離不開數據庫知識。鑒于數據庫操作的重要性,本章就此技術進行詳細的介紹,以方便大家學習使用。Java提供的JDBC(JavaDatabaseConnectivity)使得我們在數據庫編程中如魚得水,實現操作平臺獨立以及供應商獨立的目標。本章中,我們會首先搭建起JSP開發(fā)數據庫環(huán)境,然后對SQL數據庫操作語言進行簡單介紹,再通過具體的示例,讓讀者整體了解和掌握此項技術。5.1JDBCJDBC是Java數據庫編程的總稱,是JDK重要組成部分,指java.sql包中提供的所有支持數據庫編程的API類。JDBC同時提供對第三方數據庫提供商在編寫驅動軟件時遵循的協議和規(guī)范。JDBC通過drivers與數據庫通訊和交流,驅動軟件翻譯Java程序中對數據庫訪問的代碼,使之成為數據庫語言,同時,當數據庫將數據或信息傳給Java程序,驅動軟件又將其翻譯為Java語言的代碼和數據。當前主流的數據庫提供商有很多,如IBM的DB2,微軟的SQLServer,MySQL,甲骨文的Oracle等。當要添加數據到數據庫時,不同數據庫中添加操作使用的程序可能都不盡相同,是否就意味著必須針對不同的數據庫編寫相應的程序呢?實際上,根本無需如此麻煩,Java提供的驅動軟件稱為JDBC/ODBC(OpenDatabaseConnectivity,開放數據庫連接協議)橋,通過這個ODBC作為我們存取數據庫的接口,可以輕易的存取不同數據庫。ODBC最初是MS公司提供的數據庫編程協議模式,現成為JDK中java.sql包的數據庫驅動軟件。JDBC包含了“應用程序”(Application)、“驅動管理器”(DriverManager)、“驅動程序”(Driver)、“數據來源”(DataSources)4個要素,關系如下圖5-1所示。JAVAApplicationJAVAApplicationJDBCDriverManagerDriverDriverDriverOracleSQLServerODBCSourcesJDBCAPI圖圖5-1JDBC體系架構的層次根據數據庫不同,有些JDBC驅動軟件必須安裝在用戶端計算機中,而有些則要求安裝于數據庫服務器中,因此在JDBC編程中,開發(fā)人員需了解具體數據庫對JDBC驅動的要求。5.2數據庫開發(fā)環(huán)境搭建進行數據庫的開發(fā),第一步工作就是安裝數據庫軟件,前面已經介紹了,目前常用的主流數據庫有MySQL,SQLServer,DB2,已經Oracle等等。從學習目的的考慮,本書選擇MySQL數據庫作為JDBC編程示例,簡單介紹JSP數據庫開發(fā)環(huán)境的搭建過程。5.2.1MySQL數據庫的下載和安裝
MySQL是當前主流的數據庫之一,很多應用軟件利用MySQL作為數據庫;
MySQL以及JDBC驅動軟件很容易在本地計算機上安裝和調試,方便讀者控制,管理,便于學習;
MySQL可以免費下載,讀者獲取渠道很方便。MySQL的官方安裝程序下載路徑:http://,下載后直接運行安裝程序即可。步驟如下:下載數據庫壓縮文件解壓到指定文件夾下,得道用來執(zhí)行的安裝的Setup.exe文件。雙擊Setup.exe文件,進行安裝,進入安裝向導界面。如圖5-2所示,單擊“Next”按鈕進入安裝類型選擇界面。圖5-3MySQL安裝類型選擇界面圖5-3MySQL安裝類型選擇界面圖5-2MySQL安裝向導界面在圖5-3所示中,有3種類型可供選擇,分別是“Typical”典型安裝,“Completele”完全安裝和“Custom”自定義安裝。此處,為使讀者深入了解MySQL安裝過程,我們選擇第三點,單擊“Custom”按鈕進入組件安裝定制界面。如圖5-4所示,單擊“Change”按鈕可以改變程序的安裝路徑,同時可以在列表框中選擇需要安裝的組件,選擇好后點擊“Next”按鈕進入圖5-5界面用來顯示前面用戶選擇的所有信息,確認無誤后單擊“Install”按鈕進行安裝。出現如圖5-6所示界面時說明MySQL已經安裝完成,接下來需要對其進行簡單配置。選中“ConfiguretheMySQLServernow”復選框,單擊“Finish”按鈕,進行服務器的配置。圖5-5MySQL安裝信息確認界面圖圖5-5MySQL安裝信息確認界面圖5-4MySQL組件安裝選擇界面在圖5-7MySQL配置類型選擇界面中,有“DetailedConfiguration”(詳細配置)和“StandardConfiguration”(標準配置)2種選項。這里考慮到我們是要快速啟動MySQL而不用考慮服務器配置的用戶,所以這里我們選擇后者“StandardConfiguration”,單擊此單選按鈕,并單擊“Next”按鈕。圖5-7MySQL圖5-7MySQL服務器配置選項界面圖5-6MySQL安裝完成界面圖5-8是進入“WindowsOptions”(Windows選項)對話框,這里可以將MySQL設置為Windows服務,這里定義服務名為MySQL,將MySQL配置為自啟動服務。選擇“InstallAsWindowsService”選項,點擊“Next”按鈕進入“SecurityOptions”(安全選項)對話框。如圖5-9界面中,可以進行設置MySQL中root賬號的用戶密碼,root是MySQL中默認的管理員賬號,當然也可以創(chuàng)建匿名用戶。設置密碼完成后,單擊“Next”按鈕進入圖5-10界面。圖5-9MySQL安全設置界面圖圖5-9MySQL安全設置界面圖5-8MySQL服務配置界面圖5-10MySQL執(zhí)行設置界面,進入5-10界面單擊“Execute”按鈕,執(zhí)行剛剛配置的操作,執(zhí)行完成后出現圖5-11所示界面表示安裝全部完成,單擊“Finish”按鈕退出配置向導。圖5-11完成安裝界面圖圖5-11完成安裝界面圖5-10MySQL執(zhí)行設置界面上述10步全部完成,MySQL安裝和配置過程就全部結束,可以進行后面的啟動操作過程了。5.2.2MySQL數據庫安裝測試首先祝賀您成功安裝MySQL,下面介紹測試MySQL服務器和基本的操作指令,為后續(xù)的JDBC數據庫編程做好準備。首先,必須啟動MySQL服務器。在DOS命令行窗口中輸入:mysqld或者:mysqld–console運行MySQL服務器。這時MySQL服務器將啟動并運行。當然,如果這時出現“mysqld既不是內部或外部命令,也不是可執(zhí)行程序或批處理文件”的解釋,那么原因在于環(huán)境變量沒有添加,處理辦法是找到MySQL安裝文件路徑,將期中的bin文件夾路徑添加到WindowsPath中即可。當然,也可以通過開始菜單,找到MySQLServer,輸入密碼直接登錄服務器,如圖5-12。圖圖5-12登錄MySQL服務器此時,進入MySQL客戶端的工作狀態(tài),以“mysql>”為提示符。如果要與MySQL服務器斷開連接,使用命令QUIT即可。5.3SQL基礎知識SQL全稱是“結構化查詢語言(StructuredQueryLanguage)”SQL作為指令式語言簡潔,功能強大,簡單易學,被眾多計算機公司和軟件公司所采用。同時經由各公司不斷修改補充和完善,應用在幾乎所有的當代數據庫中,其可以說是計算機應用歷史上最成功語言的典范,現發(fā)展成為關系數據庫的標準語言。5.3.1SQL的特點SQL語言集數據查詢(dataquery)、數據操縱(datamanipulation)、數據定義(datadefinition)和數據控制(datacontrol)功能于一體,充分體現了關系數據語言的特點和優(yōu)點。其主要特點包括:1.綜合統(tǒng)一SQL語言集數據定義語言DDL、數據操縱語言DML、數據控制語言DCL的功能于一體,語言風格統(tǒng)一,可以獨立完成數據庫生命周期中的全部活動,包括定義關系模式、錄入數據以建立數據庫、查詢、更新、維護、數據庫重構、數據庫安全性控制等一系列操作要求,這就為數據庫應用系統(tǒng)開發(fā)提供了良好的環(huán)境,例如用戶在數據庫投入運行后,還可根據需要隨時地逐步地修改模式,并不影響數據庫的運行,從而使系統(tǒng)具有良好的可擴充性。2.高度非過程化非關系數據模型的數據操縱語言是面向過程的語言,用其完成某項請求,必須指定存取路徑。而用SQL語言進行數據操作,用戶只需提出“做什么”,而不必指明“怎么做”,因此用戶無需了解存取路徑,存取路徑的選擇以及SQL語句的操作過程由系統(tǒng)自動完成。這不但大大減輕了用戶負擔,而且有利于提高數據獨立性。3.面向集合的操作方式SQL語言采用集合操作方式,不僅查找結果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。非關系數據模型采用的是面向記錄的操作方式,任何一個操作其對象都是一條記錄。例如查詢所有平均成績在80分以上的學生姓名,用戶必須說明完成該請求的具體處理過程,即如何用循環(huán)結構按照某條路徑一條一條地把滿足條件的學生記錄讀出來。4.以同一種語法結構提供兩種使用方式SQL語言既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨立地用于聯機交互的使用方式,用戶可以在終端鍵盤上直接鍵入SQL命令對數據庫進行操作。作為嵌入式語言,SQL語句能夠嵌入到高級語言(例如C、PB)程序中,供程序員設計程序時使用。而在兩種不同的使用方式下,SQL語言的語法結構基本上是一致的。這種以統(tǒng)一的語法結構提供兩種不同的使用方式的作法,為用戶提供了極大的靈活性與方便性。5.語言簡潔,易學易用SQL功能機槍,完成核心功能實際只用到了9個動詞(SELECT,CREATE,DROP,ALTER,INSERT,UPDATE,DELETE,GRANT,REVOKE),同時它接近于英語口語,因此容易學習和使用。5.3.2SQL的六種基本指令與JDBC數據庫編程有關的基本SQL指令有如下6種:CREATE——創(chuàng)建數據表;SELECT——選擇數據庫中的指定數據;UPDATE——更新數據表;INSERT——表中插入新記錄;DELETE——刪除記錄;DROP——刪除數據表。5.3.3創(chuàng)建和刪除數據庫1.用CreateDatabase創(chuàng)建數據庫創(chuàng)建數據庫SQL語句如下:CREATEDATABASE數據庫名稱功能:用給定的名字創(chuàng)建一個數據庫,如果數據庫已經存在則發(fā)生錯誤。如上圖,命令行中寫入語句,創(chuàng)建一個名為DR的數據庫,完成則返回:QueryOK,1rowaffected(0.02sec)否則會返回:ERROR1007:Can’tcreatedatabase‘dr’;databaseexists出錯提示該數據庫已經存在。2.用SHOW顯示已有的數據庫顯示已有數據庫語句如下:SHOWDATABASES功能:列出在MySQL服務器主機上的數據庫3.用DROPDATABASE刪除數據庫刪除數據庫的語句如下:DROPDATABASE數據庫名稱功能:刪除指定名稱的數據庫中的表和數據庫,慎重使用該命令。如果要刪除的數據庫不存在,則會報錯,所以在刪除數據庫之前判斷這個數據庫是否存在,也可使用IFEXISTS阻止一個錯誤的發(fā)生,從而進行刪除代碼的改善。刪除成功則如上圖所示,否則會報錯,返回如下。5.3.4創(chuàng)建、刪除、修改數據表表是數據庫存儲數據的基本單位。一個表包含若干個字段或記錄,表的操作包括創(chuàng)建新表,修改表和刪除表。這些操作都是數據庫中最基本也是最重要的操作。1.用CREATETABLE創(chuàng)建數據表創(chuàng)建表是指在已存在的數據庫中建立新表,這是簡歷數據庫最重要的一步,是進行其他表操作的基礎。MySQL中,創(chuàng)建表通過SQL語句CREATETABLE實現的,其語法形式如下:CREATETABLE表名(屬性名數據類型[完整性約束條件],屬性名數據類型[完整性約束條件],屬性名數據類型);JDBC數據庫設計方法
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年天津理工大學中環(huán)信息學院單招綜合素質考試參考題庫含詳細答案解析
- 2026年西安航空職業(yè)技術學院單招綜合素質考試備考試題含詳細答案解析
- 2026年赤峰工業(yè)職業(yè)技術學院單招綜合素質考試備考試題含詳細答案解析
- 2026年桐城師范高等??茖W校高職單招職業(yè)適應性測試備考題庫及答案詳細解析
- 2026年遼寧鐵道職業(yè)技術學院單招職業(yè)技能考試模擬試題含詳細答案解析
- 2026華潤水泥(安順)有限公司招聘5人考試參考試題及答案解析
- 2026年廣西職業(yè)技術學院單招綜合素質筆試備考題庫含詳細答案解析
- 2026年許昌職業(yè)技術學院單招綜合素質筆試備考試題含詳細答案解析
- 2026年安徽體育運動職業(yè)技術學院單招綜合素質考試參考題庫含詳細答案解析
- 2026年黑龍江信息技術職業(yè)學院單招綜合素質考試備考試題含詳細答案解析
- 市政雨污水管排水工程監(jiān)理實施細則
- DB41T 1849-2019 金銀花烘干貯藏技術規(guī)程
- 檔案室電子檔案基本情況年報
- 鋁錠居間合同樣本
- 新概念第一冊雙課聽力文本全(英文翻譯)
- 三高知識課件
- 租賃手機籌資計劃書
- 電子束直寫技術講座
- 項目監(jiān)理人員廉潔從業(yè)承諾書
- 短篇文言文翻譯
- 疾病產生分子基礎概論
評論
0/150
提交評論