使用jython最大的好处是能够利用java的JDBC接口书写数据库操作程序,如果用python就不得不安装各种数据库的客户端软件,尤其是像oracle这样的,只是一个最简单的客户端也要好几百兆,如果采用它的瘦客户端jar包还不到两兆, 并且无论是什么平台都能使用。
下面是以jython中的dbexts工具包为例子,可以对数据库进行简单的操作。现建立dbexts.ini文件内容如下:
[default]
name=mysql
[jdbc]
name=mysql
url=jdbc:mysql://127.0.0.1/test?useUnicode=true;characterEncoding=gb2312
user=root
pwd=
driver=com.mysql.jdbc.Driver
[jdbc]
name=ora
url=jdbc:oracle:thin:@127.0.0.1:orcl
user=scott
pwd=tiger
driver=oracle.jdbc.driver.OracleDriver
然后建立isql.py,内容如下:
from dbexts import dbexts
def showrows(dbname, num=10):
db = dbexts(dbname, "dbexts.ini") #获得数据库连接
for v in vlist:
try:
sql = "select * from %s" % (v)
db.isql(sql, maxrows=num) #只显示最多num条的数据,可以避免数据量过大,内存溢出
except:
print v, "query error!"
showrows('mysql', ['table1', 'table2']) #table1, table2可以替换成你的数据库中对应的表名
以上是最基本的数据库访问例子。
下面是以jython中的dbexts工具包为例子,可以对数据库进行简单的操作。现建立dbexts.ini文件内容如下:
[default]
name=mysql
[jdbc]
name=mysql
url=jdbc:mysql://127.0.0.1/test?useUnicode=true;characterEncoding=gb2312
user=root
pwd=
driver=com.mysql.jdbc.Driver
[jdbc]
name=ora
url=jdbc:oracle:thin:@127.0.0.1:orcl
user=scott
pwd=tiger
driver=oracle.jdbc.driver.OracleDriver
然后建立isql.py,内容如下:
from dbexts import dbexts
def showrows(dbname, num=10):
db = dbexts(dbname, "dbexts.ini") #获得数据库连接
for v in vlist:
try:
sql = "select * from %s" % (v)
db.isql(sql, maxrows=num) #只显示最多num条的数据,可以避免数据量过大,内存溢出
except:
print v, "query error!"
showrows('mysql', ['table1', 'table2']) #table1, table2可以替换成你的数据库中对应的表名
以上是最基本的数据库访问例子。