Jython访问MySQL详细步骤

Jython访问MySQL的准备工作如下:

成都创新互联长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为洛川企业提供专业的网站建设、网站设计,洛川网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。

下载Jython,JDBC和MySQL。

安装(需要已经安装了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复制到c:\tmp

C:\jython2.2.1>set CLASSPATH=c:\tmp\mm.mysql-2.0.4-bin.jar;c:\tmp\zxJDBC.jar;%CLASSPATH%

启动mysql服务器  

 
 
 
  1. C:\mysql51>cd bin     
  2. C:\mysql51\bin>mysqld --console   

并建立数据库

 
 
 
  1. C:\mysql51\bin>mysql -u root     
  2. Welcome to the MySQL monitor. Commands end with ; or \g.     
  3. Your MySQL connection id is 1    
  4. Server version: 5.1.14-beta-community MySQL Community Server (GPL)     
  5.     
  6. Type 'help;' or '\h' for help. Type '\c' to clear the buffer.     
  7.     
  8. mysql> show databases     
  9. -> ;     
  10. +--------------------+     
  11. | Database           |     
  12. +--------------------+     
  13. | information_schema |     
  14. | mysql              |     
  15. +--------------------+     
  16. 2 rows in set (0.00 sec)     
  17.     
  18. mysql> create database test;     
  19. Query OK, 1 row affected (0.01 sec)     
  20.     
  21. mysql> use test     
  22. Database changed     
  23. mysql> create table a1(c1 varchar(30));     
  24. Query OK, 0 rows affected (0.02 sec)     
  25.     
  26. mysql> insert into a1 values ('Hello World');     
  27. Query OK, 1 row affected (0.00 sec)    

进入Jython访问MySQL

 
 
 
  1. C:\jython2.2.1>jython     
  2. Jython 2.2.1 on java1.6.0    
  3. Type "copyright", "credits" or "license" for more information.     
  4. >>> from com.ziclix.python.sql import zxJDBC     
  5. >>> mysqlConn = zxJDBC.connect("jdbc:mysql://localhost/test",     
  6. ... "root", "",     
  7. ... "org.gjt.mm.mysql.Driver")     
  8. >>> cursor = mysqlConn.cursor()     
  9. >>> cursor.execute("SELECT * FROM a1");     
  10. >>> cursor.fetchone()     
  11. ('Hello World',)     
  12. >>> cursor.fetchall()     
  13. []     
  14. >>> cursor.description     
  15. [('c1', 12, 30, None, None, None, 1)]     
  16. >>>   

需要用jython自己封装的dbexts库

最后编辑一个名为dbexts.ini的文件保存到c:\jython2.2.1\lib

 
 
 
  1. [default]     
  2. name=mysqltest     
  3.     
  4. [jdbc]     
  5. name=mysqltest     
  6. url=jdbc:mysql://localhost/test     
  7. user=root     
  8. pwd=     
  9. driver=org.gjt.mm.mysql.Driver    

进入jython

 
 
 
  1. >>> from dbexts import dbexts     
  2. >>> mysqlcon = dbexts("mysqltest", "c:\jython2.2.1\lib\dbexts.ini     
  3. >>> mysqlcon.table()     
  4.     
  5. TABLE_CAT | TABLE_SCHEM | TABLE_NAME | TABLE_TYPE | REMARKS     
  6. -----------------------------------------------------------     
  7. | | a1 | TABLE |     
  8.     
  9. 1 row affected     
  10.     
  11. >>> mysqlcon.table('a1')     
  12.     
  13. TABLE_CAT | TABLE_SCHEM | TABLE_NAME | COLUMN_NAME | DATA_TYPE |     
  14. S | NUM_PREC_RADIX | NULLABLE | REMARKS | COLUMN_DEF | SQL_DATA_     
  15. SITION | IS_NULLABLE     
  16. ----------------------------------------------------------------     
  17. ----------------------------------------------------------------     
  18. --------------------     
  19. | | a1 | c1 | 12 |     
  20. | 10 | 1 | | | 0    
  21. | YES     
  22.     
  23. 1 row affected     
  24.     
  25. >>> mysqlcon.isql("SELECT * FROM a1")     
  26.     
  27. C1     
  28. -----------     
  29. Hello World     
  30.     
  31. 1 row affected     
  32.     
  33. DML      
  34. >>> mysqlcon.isql("insert into a1 values('insert by dbexts')")     
  35. >>> mysqlcon.isql("SELECT * FROM a1")     
  36.     
  37. C1     
  38. ----------------     
  39. Hello World     
  40. insert by dbexts     
  41.     
  42. 2 rows affected    

Jython访问MySQL的设置到此就完成了。

分享名称:Jython访问MySQL详细步骤
转载源于:http://www.36103.cn/qtweb/news43/11943.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联