版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第23章java 數(shù)據(jù)庫(kù)編程o 數(shù)據(jù)庫(kù)連接的基本概念o 使用數(shù)據(jù)庫(kù)的準(zhǔn)備工作o 連接數(shù)據(jù)庫(kù)的步驟o 數(shù)據(jù)庫(kù)連接的詳細(xì)步驟o 數(shù)據(jù)維護(hù)o 查詢數(shù)據(jù)庫(kù)中的內(nèi)容o 查詢信息實(shí)例o 與數(shù)據(jù)庫(kù)相關(guān)的接口o 批處理o 事務(wù)處理o mysql數(shù)據(jù)庫(kù)23.1 數(shù)據(jù)庫(kù)連接的基本概念 jdbc(java database connective),java數(shù)據(jù)庫(kù)連接,是一組專門負(fù)責(zé)連接并操作數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn) jdbc能完成許多事情 完成數(shù)據(jù)庫(kù)的連接創(chuàng)建 傳送sql命令給數(shù)據(jù)庫(kù),完成數(shù)據(jù)庫(kù)操作及數(shù)據(jù)表 接受和處理數(shù)據(jù)庫(kù)所執(zhí)行的結(jié)果23.1 數(shù)據(jù)庫(kù)連接的基本概念 jdbc在使用中有常見的以下三類 1. jdbc-odbc橋
2、連接(jdbd-odbc bridge) 2. jdbc連接 3. jdbc網(wǎng)絡(luò)連接23.2 使用數(shù)據(jù)庫(kù)的準(zhǔn)備工作23.2.1 oracle數(shù)據(jù)庫(kù)的安裝23.2.2 數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)程序設(shè)置23.2.3 數(shù)據(jù)庫(kù)表的準(zhǔn)備23.2.1 oracle數(shù)據(jù)庫(kù)的安裝 oracle的安裝方法 打開oracle安裝目錄下的安裝文件夾,雙擊“setup.exe”文件 進(jìn)行安裝的源和目標(biāo)文件地點(diǎn)設(shè)置 單擊【標(biāo)準(zhǔn)版】,然后單擊【下一步】按鈕 在接下來的頁(yè)面中選擇相應(yīng)設(shè)置,并繼續(xù)安裝23.2.2 數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)程序設(shè)置 oracle提供java環(huán)境下的數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序 驅(qū)動(dòng)程序路徑:e:oracleproduct10.
3、1.0db_1jdbclibclasses12.jar 如果是直接使用命令行方式進(jìn)行開發(fā)的話,則需要在屬性中增加classpath 23.2.3 數(shù)據(jù)庫(kù)表的準(zhǔn)備 數(shù)據(jù)表類型結(jié)構(gòu)如下表no.列名稱類型描述1pidnumber表 示 人 員 編 號(hào) , 自 動(dòng) 增 長(zhǎng) , 通 過sequence2namevarchar2姓名3agenumber年齡4birthdaydate生日5salarynumber工資,小數(shù)23.2.3 數(shù)據(jù)庫(kù)表的準(zhǔn)備 在eclipse中新建一個(gè)名稱為jdbcproject1.0的包,接下來完成編寫數(shù)據(jù)庫(kù)的創(chuàng)建腳本 1. 新建名稱為“數(shù)據(jù)庫(kù)創(chuàng)建腳本.sql”的文件 2. 用s
4、ql語(yǔ)言新建一個(gè)類型為上表類型所示的數(shù)據(jù)庫(kù)表,具體語(yǔ)言內(nèi)容見【范例23-1】 3. 打開oracle數(shù)據(jù)庫(kù)的監(jiān)聽服務(wù)和項(xiàng)目服務(wù)“oraclejobschedulerorcl“23.2.3 數(shù)據(jù)庫(kù)表的準(zhǔn)備 4. 點(diǎn)擊【開始】按鈕,選擇【運(yùn)行】命令,在【打開】文本框中輸入“sqlplus”,單擊【確定】按鈕 5. 輸入用戶名和剛安裝oracle時(shí)設(shè)置的用戶密碼,進(jìn)入到數(shù)據(jù)庫(kù)管理后臺(tái) 6. 然后將剛才創(chuàng)建的文件指令輸入到控制臺(tái)中,此時(shí),便創(chuàng)建了一個(gè)新的名稱為person的數(shù)據(jù)表 【范例23-1】 建立新序列和新表23.3 連接數(shù)據(jù)庫(kù)的步驟 進(jìn)行jdbc操作的時(shí)候,主要按照以下的步驟完成 1. 加載數(shù)
5、據(jù)庫(kù)驅(qū)動(dòng)程序,加載的時(shí)候需要將驅(qū)動(dòng)程序配置到classpath之中 2. 連接數(shù)據(jù)庫(kù),通過connection接口和drivermanager類完成 3. 操作數(shù)據(jù)庫(kù),主要通過statement、preparedstatement、resultset三個(gè)接口完成 4. 關(guān)閉數(shù)據(jù)庫(kù) 23.4 數(shù)據(jù)庫(kù)連接的詳細(xì)步驟 在jdbc的操作過程中中,進(jìn)行數(shù)據(jù)庫(kù)的連接的主要幾個(gè)步驟如下 1. 通過class.forname()加載數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序 2. 通過drivermanager類進(jìn)行數(shù)據(jù)庫(kù)的連接 3. 通過connection接口接收連接 4. 此時(shí)輸出的是一個(gè)對(duì)象,則表示數(shù)據(jù)庫(kù)已經(jīng)連接上了 【范例2
6、3-2】 通過java指令進(jìn)行實(shí)際數(shù)據(jù)庫(kù)連接過程。本例是在用戶建立過oracle數(shù)據(jù)表之后,通過java程序進(jìn)行數(shù)據(jù)庫(kù)連接的操作 23.5 數(shù)據(jù)維護(hù)23.5.1 增加數(shù)據(jù)23.5.2 更新數(shù)據(jù)23.5.3 刪除數(shù)據(jù)23.5.1 增加數(shù)據(jù) 增加操作要編寫增加的sql語(yǔ)句:insert,但是因?yàn)闋砍兜搅诵蛄械母拍睿栽谑褂玫臅r(shí)候需要編寫sql語(yǔ)句進(jìn)行增加操作,所以在sql語(yǔ)句中直接寫上序列的nextval即可。形式為:序列名.nextval 【范例23-3】 為數(shù)據(jù)表增加數(shù)據(jù)。這里使用statement接口為數(shù)據(jù)庫(kù)中新建立的表進(jìn)行增加數(shù)據(jù)操作23.5.2 更新數(shù)據(jù) 數(shù)據(jù)庫(kù)的更新操作同增加數(shù)據(jù)操作
7、相同,直接編寫update語(yǔ)句即可 【范例23-4】 更新數(shù)據(jù)。在其后增加更新數(shù)據(jù)的sql語(yǔ)句23.5.3 刪除數(shù)據(jù) 數(shù)據(jù)的增加,更新,刪除等都是通過sql語(yǔ)句完成,所以在修改數(shù)據(jù)的時(shí)候,只需要更改該程序下的sql語(yǔ)句即可實(shí)現(xiàn)目的。使用delete語(yǔ)句執(zhí)行刪除數(shù)據(jù)的操作【范例23-5】 刪除數(shù)據(jù)庫(kù)中的數(shù)據(jù)信息。通過修改sql語(yǔ)句進(jìn)行刪除數(shù)據(jù)命令。代碼的整體流程同上次范例相似,不同的為sql語(yǔ)句。由于數(shù)據(jù)庫(kù)操作有自己獨(dú)特的一種語(yǔ)言,所以當(dāng)控制數(shù)據(jù)庫(kù)操作時(shí)需要sql語(yǔ)言才能達(dá)成目的23.6 查詢數(shù)據(jù)庫(kù)中的內(nèi)容 在oracle中,可以通過select語(yǔ)句,查詢數(shù)據(jù)庫(kù)中的內(nèi)容 【范例23-6】 通過s
8、tatement類進(jìn)行數(shù)據(jù)庫(kù)查詢操作 【范例23-7】 用索引號(hào)進(jìn)行數(shù)據(jù)查詢 23.7 查詢數(shù)據(jù)實(shí)例 【范例23-8】 通過實(shí)例化程序了解控制臺(tái)輸入數(shù)據(jù)。接下來進(jìn)行的是當(dāng)用戶自己輸入數(shù)據(jù)時(shí),需要如何將輸入的數(shù)據(jù)保存到數(shù)據(jù)庫(kù)當(dāng)中 【范例23-9】 從控制臺(tái)輸入特殊內(nèi)容。用戶在用戶名一項(xiàng)中輸入特殊內(nèi)容,比如為英文名稱,添加了單引號(hào) 23.8 與數(shù)據(jù)庫(kù)相關(guān)的接口23.8.1 完成增加操作23.8.2 完成查詢操作23.8.3 完成模糊查詢操作23.8.1 完成增加操作 【范例23-10】 運(yùn)用preparedstatement接口代替statement接口進(jìn)行增加內(nèi)容操作23.8.2 完成查詢操作
9、【范例23-11】 運(yùn)用preparedstatement接口完成查詢操作。運(yùn)用preparedstatement接口做查詢操作要比用statement接口直接做查詢操作更有準(zhǔn)確性和可塑性23.8.3 完成模糊查詢操作 【范例23-12】 運(yùn)用preparedstatement類中的方法進(jìn)行模糊操作。所謂模糊,就是指有一定相似程度的值的查詢。如同搜索關(guān)鍵字進(jìn)行具有關(guān)鍵字信息的查詢類似23.9 批處理 批處理(batch),也稱為批處理腳本。顧名思義,批處理就是對(duì)某對(duì)象進(jìn)行批量的處理 【范例23-13】 一次性輸入數(shù)據(jù)庫(kù)多條語(yǔ)句。在jdbc2.0之后,java提出的新概念,表示一次性可以處理多條
10、數(shù)據(jù)庫(kù)信息內(nèi)容,以方便增加數(shù)據(jù)操作 23.10 事務(wù)處理 oracle數(shù)據(jù)庫(kù)支持事務(wù)處理,可以通過commit提交事務(wù),通過rollback回滾事務(wù)。這兩種方式是進(jìn)行事務(wù)處理的首要手段 【范例23-14】 通過commit()方法提交事務(wù) 23.11 mysql數(shù)據(jù)庫(kù)23.11.1 mysql數(shù)據(jù)庫(kù)的安裝23.11.2 mysql數(shù)據(jù)庫(kù)的基本命令23.11.3 使用mysql數(shù)據(jù)庫(kù)23.11.1 mysql數(shù)據(jù)庫(kù)的安裝 mysql安裝的過程非常簡(jiǎn)單,但是需要進(jìn)行合理的配置 mysql數(shù)據(jù)庫(kù)的默認(rèn)端口號(hào)是3306 選擇數(shù)據(jù)庫(kù)的編碼為gbk,否則程序在讀取的時(shí)候?qū)⒊霈F(xiàn)亂碼問題23.11.2 mys
11、ql數(shù)據(jù)庫(kù)的基本命令 1. 連接數(shù)據(jù)庫(kù):mysql -u用戶名 -p密碼 2. 查看全部的數(shù)據(jù)庫(kù):show databases ; 3. 創(chuàng)建數(shù)據(jù)庫(kù):create database orcl ; 4. 使用數(shù)據(jù)庫(kù):use orcl ; 5. 查看全部的表:show tables ;23.11.2 mysql數(shù)據(jù)庫(kù)的基本命令 6. 創(chuàng)建一張表,其中id可以自動(dòng)增長(zhǎng) drop table person ; - 刪除表 create table person( pid int auto_increment primary key not null , name varchar(50) not null , age int not null , birthday date not null , salary float not null )
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生資助先進(jìn)單位事跡15篇
- 幽默婚宴父親致辭(集合15篇)
- 感人的勵(lì)志演講稿
- 學(xué)生會(huì)活動(dòng)策劃部迎新
- 開學(xué)安全教育學(xué)習(xí)
- 開學(xué)講話稿15篇
- 考慮邊界層相互作用的雙層葉片垂直軸風(fēng)力機(jī)氣動(dòng)特性研究
- 基于大型砂箱模擬試驗(yàn)的層狀包氣帶水分時(shí)空運(yùn)移特征研究
- 智研咨詢發(fā)布-2024年中國(guó)分布式能源管理系統(tǒng)行業(yè)現(xiàn)狀、發(fā)展環(huán)境及投資前景分析報(bào)告
- 動(dòng)漫知識(shí)大比拼
- 智研咨詢發(fā)布-2023年中國(guó)智能驅(qū)鳥裝置行業(yè)現(xiàn)狀、發(fā)展環(huán)境及深度分析報(bào)告
- 不抱怨的世界-讀后感課件
- 安慶時(shí)聯(lián)新材料有限責(zé)任公司10000噸年抗氧劑系列產(chǎn)品及抗紫外線吸收劑生產(chǎn)項(xiàng)目環(huán)境影響報(bào)告
- 中醫(yī)師承申請(qǐng)表
- 臨床微生物檢查課件 第2章細(xì)菌的生理
- 作品著作權(quán)獨(dú)家授權(quán)協(xié)議(部分授權(quán))
- 心肺復(fù)蘇(最全版)完整版
- 取水泵站施工組織設(shè)計(jì)
- 第二語(yǔ)言習(xí)得入門完整共7units課件
- 化工石油工程項(xiàng)目管道安裝技術(shù)教材(33張幻燈片)課件
- 水利工程地震應(yīng)急預(yù)案
評(píng)論
0/150
提交評(píng)論