999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Oracle數據庫中自帶Java的簡單應用

2008-12-31 00:00:00白改朝
電腦知識與技術 2008年25期

摘要:Oracle數據庫對Java提供了很好的支持,詳細介紹了在Windows系統環境下如何配置Oracle自帶的Java開發環境,以及如何通過Java實現對Oracle數據庫進行簡單的查詢和插入操作的方法。

關鍵詞:Oracle;Java;查詢;插入

中圖分類號:TP311文獻標識碼:A 文章編號:1009-3044(2008)25-1373-02

The Simple Apply Of Java in Oracle Database

WANG Fei, BAI Gai-chao

(63655 Unit, Wulumuqi 841700, China)

Abstract: Oracle database provided a good support on Java, described in detail in the Windows operating system environment how to configure Oracle's own Java development environment, and how to use the Java to query and insert in Oracle database.

Key words: Oracle; Java; select; insert

1 引言

自1995年Java 面世以來,Oracle就一直對Java給予了積極的支持。從Oracle8i開始Oracle就將JVM常駐在服務器上,通過使用Java可以完成許多PL/SQL無法完成的任務。下面將詳細介紹在Windows環境下Oracle11g版本中Java的簡單應用。

2 環境配置

要使用Java進行Oracle數據庫的開發需要設置兩個環境變量:PATH和CLASSPATH。

首先,需要將java.exe和javac.exe等可執行文件的路徑加入到PATH環境變量中。此路徑為Oracle主目錄下的\\jdk\\bin,本機Oracle 11g的此路徑為:“D:\\app\\Administrator\\product\\11.1.0\\db_1\\jdk\\bin”(注意環境變量中的各個路徑以分號分開)。添加方法:桌面->我的電腦->右鍵->屬性->高級->環境變量,編輯“系統變量”里面的PATH,添加“D:\\app\\Administrator\\product\\11.1.0\\db_1\\jdk\\bin”到PATH中。

其次,需要將編譯Java代碼時需要應用的類的路徑加入到CLASSPATH環境變量中。為了使用Java對Oracle數據庫進行操作,必須添加進行數據庫連接的Oracle JDBC類到CLASSPATH環境變量中。在Oracle11以前的版本中,此類路徑為Oracle主目錄下的\\jdbc\\lib\\classes12.jar,本機Oracle 11g的路徑為:“D:\\app\\Administrator\\product\\11.1.0\\db_1\\jdbc\\lib\\ojdbc5.jar”。添加方法:我的電腦->右鍵->屬性->高級->環境變量->系統變量,編輯“系統變量”里面的CLASSPATH,添加“D:\\app\\Administrator\\product\\11.1.0\\db_1\\jdbc\\lib\\ojdbc5.jar”到CLASSPATH中。同時還需要將當前的工作路徑加入到CLASSPATH變量中,需要在CLASSPATH后添加“.”,一個點代表當前所在目錄。此處僅添加了必須的路徑,今后可以根據開發的需要將Java的類路徑添加到CLASSPATH路徑中。

3 查詢操作

下面對Oracle數據庫提供的示列模式SCOTT下的EMP表進行查詢操作,詳細代碼如下:

import java.sql.*;

import oracle.jdbc.*;

import oracle.jdbc.driver.*;

public class select{

public static void main(String args[]) throws Exception{

Connection conn=1;

try{

Class.forName(\"oracle.jdbc.driver.OracleDriver\");

conn=DriverManager.getConnection( \"jdbc:oracle:thin:@localhost:1521:ora11\", \"scott\", \"tiger\");//連接Oracle數據庫

Statement stmt=conn.createStatement();

ResultSet rs=stmt.executeQuery(\"select empno,ename,job,hiredate,sal from emp\");

System.out.println(\"empnoenamejobhiredate sal\");

System.out.println(\"---------------------------\");

while(rs.next()){

System.out.println(rs.getInt(\"empno\")+\"\"+rs.getString(\"ename\")+\"\"+rs.getString(3)+\"\"+rs.getString(4)+\"\"+rs.getString(5));}

rs.close();

stmt.close();

}catch(SQLException sqle){

sqle.printStackTrace();

}catch(Exception e){

e.printStackTrace();

}finally{

conn.close();}}}

以上代碼在本機保存為“C:\\Documents and Settings\\Administrator\\java\\select.java”。對以上代碼通過在命令行執行javac命令進行編譯,具體命令如下:

C:\\Documents and Settings\\Administrator\\java>javac select.java

通過編譯后就會在當前工作目錄下產生select.class類文件,在命令行中使用java命令可以執行此類文件,執行情況如下:

C:\\Documents and Settings\\Administrator\\java>java select

empnoenamejobhiredate sal

---------------------------

7369SMITHCLERK1980-12-17 00:00:00.0800

7499ALLENSALESMAN1981-02-20 00:00:00.01600

7521WARDSALESMAN1981-02-22 00:00:00.01250

7566JONESMANAGER1981-04-02 00:00:00.02975

7654MARTINSALESMAN1981-09-28 00:00:00.01250

7698BLAKEMANAGER1981-05-01 00:00:00.02850

7782CLARKMANAGER1981-06-09 00:00:00.02450

7788SCOTTANALYST1987-04-19 00:00:00.03000

7839KINGPRESIDENT1981-11-17 00:00:00.05000

7844TURNERSALESMAN1981-09-08 00:00:00.01500

7876ADAMSCLERK1987-05-23 00:00:00.01100

7900JAMESCLERK1981-12-03 00:00:00.0950

7902FORDANALYST1981-12-03 00:00:00.03000

7934MILLERCLERK1982-01-23 00:00:00.01300

4 插入操作

在執行插入操作前,先在數據庫中建立一個簡單的表,表中只包含一列,列類型為日期類型,數據庫中建表命令如下:

create table t(x date);

然后建立對該表進行插入操作的java代碼,具體代碼如下:

import java.sql.*;

import oracle.jdbc.*;

import oracle.jdbc.pool.OracleDataSource;

public class insert{

public static void main(String args[]) {

Connection conn=1;

try{

OracleDataSource ods = new OracleDataSource();

ods.setURL(\"jdbc:oracle:thin:scott/tiger@localhost:1521:ora11\");/*另一種連接數據庫的方法*/

conn=ods.getConnection();

Statement stmt=conn.createStatement();

int res=stmt.executeUpdate(\"insert into t values(to_date('2008-09-23 13:33:22', 'yyyy-mm-dd hh24:mi:ss'))\");

System.out.println(\"成功完成插入操作!\");

conn.close();

}catch(SQLException sqle){

sqle.printStackTrace();

}catch(Exception e){

e.printStackTrace();}}}

以上代碼在本機保存為“C:\\Documents and Settings\\Administrator\\java\\insert.java”。對以上代碼通過在命令行執行javac命令進行編譯,具體命令如下:

C:\\Documents and Settings\\Administrator\\java>javac insert.java

通過編譯后就會在當前工作目錄下產生insert.class類文件,在命令行中使用java命令可以執行此類文件,執行情況如下:

C:\\Documents and Settings\\Administrator\\java>java insert

成功完成插入操作!

完成以上操作后可以在數據庫中驗證數據是否插入到表中,數據庫中查詢驗證情況如下:

SQL> select * from t;

X

--------------

23-9月-08

5 結束語

以上的Java代碼只是使用了Oracle數據庫提供的JDK,編譯和運行都是在Oracle數據庫的外部進行,除此之外在Oracle數據庫中可以直接進行Java存儲過程的編寫,也可以在外部編寫Java代碼,通過loadjava命令加載到數據庫中在數據庫內部運行。

總之,Oracle數據庫對Java提供了很好的支持。在Java中使用SQLJ進行開發更加方便簡潔,通過使用Java可以很方便完成電子郵件的發送、運行操作系統命令或程序、連接其他非Oracle數據庫運行操作,為Oracle數據庫應用提供了一種很好的方法。

參考文獻:

[1] Bjarki Holm, John Carnell. Oracle 9i Java程序設計[M].北京:清華大學出版社,2002.

[2] Thomas Kyte. Oracle專家高級編程[M].北京:清華大學出版社,2002.

[3] 張孝祥. Java就業培訓教程[M].北京:清華大學出版社,2007.

主站蜘蛛池模板: 亚国产欧美在线人成| 日本手机在线视频| 国产亚洲精| 欧美激情首页| 日韩人妻少妇一区二区| 国内精品小视频在线| 亚洲天堂福利视频| 婷婷午夜影院| 丰满的少妇人妻无码区| 久青草网站| 亚洲高清无码久久久| 欧美精品三级在线| 亚洲有码在线播放| 91在线激情在线观看| 欧美日韩一区二区在线播放 | 色成人亚洲| 婷婷综合色| 国产精品香蕉| 久久99精品国产麻豆宅宅| 伊人成人在线视频| 亚洲日韩在线满18点击进入| 欧美在线伊人| 韩日午夜在线资源一区二区| 中文字幕亚洲综久久2021| 国产一区三区二区中文在线| 国产精品流白浆在线观看| 欧美日韩国产系列在线观看| 国产不卡一级毛片视频| 国产第二十一页| 五月天福利视频| 国产美女自慰在线观看| 99精品伊人久久久大香线蕉 | 欧美激情视频一区二区三区免费| 国产亚洲精品va在线| 欧美a级在线| 国产一区二区三区日韩精品| 亚洲中文字幕av无码区| 99精品国产电影| 毛片久久网站小视频| 福利视频一区| 国产男女免费完整版视频| 少妇精品网站| 国产精品免费露脸视频| 91视频99| 久热99这里只有精品视频6| 成·人免费午夜无码视频在线观看 | www.日韩三级| 国产中文一区a级毛片视频| jizz在线观看| 国产在线观看第二页| 国产真实乱人视频| 91精品人妻一区二区| 国产精品思思热在线| 国产美女主播一级成人毛片| 国内精品久久久久久久久久影视| 国内丰满少妇猛烈精品播| 国产性精品| 毛片网站在线播放| 日韩精品无码免费一区二区三区 | 久久女人网| 久久国产毛片| 精品人妻AV区| 亚洲第一国产综合| 国产精品性| jizz国产在线| 最新日韩AV网址在线观看| 婷婷六月综合网| 99精品免费欧美成人小视频 | 亚洲综合精品香蕉久久网| 视频一区亚洲| 亚洲欧美不卡| 在线视频亚洲色图| 国产精品一区二区在线播放| av尤物免费在线观看| 婷婷99视频精品全部在线观看| 五月丁香伊人啪啪手机免费观看| 四虎在线高清无码| 视频一本大道香蕉久在线播放| 中文字幕乱码中文乱码51精品| 日韩精品一区二区三区大桥未久| 中文字幕在线视频免费| 99视频在线免费观看|