需要的準(zhǔn)備工作:
下載
http://jaist.dl.sourceforge.net/sourceforge/zxjdbc/zxJDBC-2.1.tar.gz
http://jaist.dl.sourceforge.net/sourceforge/jython/jython_installer-2.2.1.jar
根據(jù)自己的jdk版本下載對(duì)應(yīng)的ojdbc版本
http://download.Oracle.com/otn/utilities_drivers/jdbc/10203/ojdbc14.jar
http://download.oracle.com/otn/utilities_drivers/jdbc/111060/lib/ojdbc5.jar
http://download.oracle.com/otn/utilities_drivers/jdbc/111060/lib/ojdbc6.jar
安裝(需要已經(jīng)安裝了jdk/jre?)
java -jar jython_installer-2.2.1.jar 安裝到C:/jython2.2.1
將zxJDBC.jar解壓縮到c:/tmp
將mm.MySQL-2.0.4-bin.jar復(fù)制到c:/tmp
C:/jython2.2.1>set CLASSPATH=c:/tmp/ojdbc5.jar;c:/tmp/zxJDBC.jar;%CLASSPATH%
啟動(dòng)Oracle服務(wù)器:
進(jìn)入jython環(huán)境訪問Oracle
編輯文件c:/tmp/ora.py
from oracle.jdbc.driver import OracleDriverfrom java.sql import DriverManagerdef connect(un, pw, sid, host, port):driver = OracleDriver()DriverManager.registerDriver(driver)connection = "jdbc:oracle:thin:@%s:%s:%s" % (host, port, sid)conn = DriverManager.getConnection(connection, un, pw)return conndef doStuff(conn):stmt = conn.createStatement()rset = stmt.executeQuery("SELECT banner FROM sys.v_$version")while (rset.next()):PRint rset.getString(1)stmt.close()if __name__ == "__main__":un = 'ebc20'pw = 'abc'sid = 'abc'host = '10.4.231.16'port = '1521'conn = connect(un, pw, sid, host, port)doStuff(conn) C:/jython2.2.1>jython /tmp/ora.pyOracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64biPL/SQL Release 10.2.0.3.0 - ProductionCORE 10.2.0.3.0 ProductionTNS for HPUX: Version 10.2.0.3.0 - ProductionNLSRTL Version 10.2.0.3.0 - Production |
然后用jython自己封裝的dbexts庫。
最后編輯一個(gè)名為dbexts.ini的文件保存到c:/jython2.2.1/lib。
[default]name=mysqltest[jdbc]name=oraurl=jdbc:oracle:thin:@10.4.231.16:1521:abcuser=ebc20pwd=abcdriver=oracle.jdbc.driver.OracleDriverdatahandler=com.ziclix.python.sql.handler.OracleDataHandler進(jìn)入jython>>> from dbexts import dbexts>>> oracon = dbexts("ora", "c:/jython2.2.1/lib/dbexts.ini")>>> oracon.isql("SELECT * FROM v$version")BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64biPL/SQL Release 10.2.0.3.0 - ProductionCORE 10.2.0.3.0 ProductionTNS for HPUX: Version 10.2.0.3.0 - ProductionNLSRTL Version 10.2.0.3.0 - Production5 rows affected |