JAVA程式设计与资料结构.ppt

上传人:ga****84 文档编号:456176 上传时间:2018-10-09 格式:PPT 页数:14 大小:160.50KB
下载 相关 举报
JAVA程式设计与资料结构.ppt_第1页
第1页 / 共14页
JAVA程式设计与资料结构.ppt_第2页
第2页 / 共14页
JAVA程式设计与资料结构.ppt_第3页
第3页 / 共14页
JAVA程式设计与资料结构.ppt_第4页
第4页 / 共14页
JAVA程式设计与资料结构.ppt_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、JAVA 程式設計與資料結構,第十一章JDBC,JDBC,JAVA程式可用來與資料庫連結,進而操作資料庫中的資料,如取得,更新,儲存等等。使用之前請先設定電腦為DBMS的主機。再使用JDBC-ODBC Bridge為Driver來連結。,建立連結,Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); / 第一步:讀進 JDBC Driver String url = jdbc:odbc:Store; Connection conn = DriverManager.getConnection(url); / 第二部:建立與資料庫的連結,建立敘述以及表格,接下來

2、我們來建立敘述(Statement)。雖然我們已經建立了連結,不過我們必須要將SQL的指令送進去,才能夠根據這些指令來操控資料庫,所以我們需要Statement。Statement stmt = conn.createStatement()建立表單(Table)的SQL指令為:CREATE TABLE Personnel(Name VARCHAR(32), ID INTEGER, Salary FLOAT, Gender String);,加入資料,根據製作的表單內容項目加入一筆資料。 加入資料的SQL語法為 Insert Into Personnel Values(Tom, 11, 3700

3、0, 男),讀取表單資料,將資料存入之後,可以根據需要將其讀取。 選擇資料的SQL語法為 Select ID, Gender, Name From Personnel 選擇資料之後,我們還需要取得其傳回值。這裡我們使用Statement內定的方法executeQuery()來執行查詢。此方法的傳回值為ResultSet物件。,更新資料,更新資料庫中的資料的SQL語法為:UPDATE 表單名 SET 欄位名 = value WHERE 欄位名 LIKE value 意思是在Personnel表單中,把姓名欄為Jack的那一行之ID改為7。,使用Join Table,資料庫可以連結不同的表單來得到

4、資料,不過兩個表單之中必須要有相關連的欄位來找尋到其中的關係。,查詢方式SELECT Package.senderName, Personnel.Name FROM Package, Personnel WHERE Package.ID = 10 and Personnel.ID = 10;,Prepared Statements,有的時候我們會經常使用某一個SQL指令,例如Insert或是Update,在這個狀況下我們可以使用先行定義的敘述,也就是Prepared Statements。 PreparedStatement insertPackage = conn.prepareStatem

5、ent(Insert Into Package Values ( ?, Simon, ?, ? ,男);,這個語法有些部分使用問號代替,這些問號用來表示要輸入的數值,用setXXX()方法來將數值指定到上述的SQL語法,XXX代表資料形態,例如: insertPackage.setString(1, Dean);insertPackage.setInt(2, 22);insertPackage.setInt(3, 500); 接下來使用 insertPackage.executeUpdate(): 便可以執行此insert的指令。,Result Sets的操作,當我們取得資料庫中的資料後,會儲

6、存在ResultSet這個物件中。儲存在這個物件中的資料,我們可以將其想像成一個資料表單,一樣是一行一行的型態。ResultSet物件允許我們在這一個表單中一行一行的移動,如此我們可以跳到我們想要的位置去查詢我們欲查詢的資料。,在能夠執行這個Function之前,我們必須先加入幾個參數,如下: Statement stmt = conn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);ResultSet rs = stmt.executeQuery(SELECT ID, senderNam

7、e, State FROM Package where ID 30);,在Result Sets的表單中移動,使用ResultSet物件的next()方法來將取得的資料一一列印出來,因為我們將指標訂在第一筆資料,然後一筆一筆(一行一行)往下取得資料。 如果我們將指標訂在最後一行,然後往上讀取,便會得到次序顛倒的結果。我們可以使用afterLast()方法來將指標訂在最後,而使用previous()方法來往前讀取(此方法剛好相對於next()方法)。,absolute()方法指的是將指標移到絕對的行數。所謂絕對的行數便是第一行為1,第二行為2,.。 而relative()方法便是將指標移到相對的

8、行數,所謂相對的便是與目今的相對,好比說一開始是在第5行,那麼relative(2)指的便是第7行,利用Result Sets表單來修改資料內容,可以直接在讀取回來的Result Set表單中修改資料,再藉由此修改資料庫中的資料。 為了得到可以修改的資料,我們要在createStatement()方法中輸入參數 Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);,使用updateString()方法來修改Result Set之中的資料。使用updat

9、eRow()方法來將資料庫中的資料也一併修改。 (此時指標必須指著此行),利用Result Sets表單來加入一行資料,使用moveToInsertRow()方法來將指標移到一個空白行,然後使用updateXXX()方法來將資料輸入,最後使用insertRow()方法來將資料寫入資料庫。,利用Result Sets表單來刪除一行資料,刪除一行資料便顯得相對簡單得多了,我們只要在ResultSet表單中將指標移到我們想要刪除的那一行,然後使用deleteRow()方法即可。 在ResultSet的表單中,可能不會馬上顯示我們所做的修改,如此我們可以呼叫refreshRow()方法來從新整理資料庫內容。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。