全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

除了cx_Oracle,python还可以通过什么方式访问Oracle数据库?

发布时间:2023-10-13 12:23:27
发布人:xqq

一、除了cx_Oracle,python还可以通过什么方式访问Oracle数据库

理论上,用其他任何方式(库、语言)访问Oracle的方式,你都可以用于Python中,这个神器叫做SWIG(http://www.swig.org/),它提供了C++Java/Python等诸多语言的互相调用的适配库生成。Oracle本身自带C/C++Java接口,你可以进行简单封装后,用SWIG包装。这种重复造轮子的工作不建议采用,wx_Oracle是很简单的方法。

或者通过jaydebeapi来实现。

核心代码:

>>> import jaydebeapi

>>> conn = jaydebeapi.connect(“org.hsqldb.jdbcDriver”,

…                           “jdbc:hsqldb:mem:.”,

…                           [“SA”, “”],

…                           “/path/to/hsqldb.jar”,)

>>> curs = conn.cursor()

>>> curs.execute(‘create table CUSTOMER’

…              ‘(“CUST_ID” INTEGER not null,’

…              ‘ “NAME” VARCHAR(50) not null,’

…              ‘ primary key (“CUST_ID”))’

…             )

>>> curs.execute(“insert into CUSTOMER values (?, ?)”, (1, ‘John’))

>>> curs.execute(“select * from CUSTOMER”)

>>> curs.fetchall()

[(1, u’John’)]

>>> curs.close()

>>> conn.close()

简单来说,目前几乎所有的数据库都是支持jdbc的,因此几乎都能找到相应的jar包,通过jaydebeapi这个库,只需要把jra放到指定的位置,然后在程序中使用它即可连接数据库。

优点:

1.支持的数据库种类多,只要有jar包就可以。

2.不需要关心过于程序的运行环境,只要是相同平台下编译出来的包,复制过来就可以直接运行。

缺点:

打包的时候需要连同jar包一起打,可能会导致安装包过大。

延伸阅读:

二、什么是数据库

有组织且相互关联的数据的集合称为数据库。database 是一个存储数据的应用程序。它有各种应用程序,包括 MySQL、Microsoft SQL、Oracle 等。

每个数据库都不同,因为每个公司/组织都有其结构、数据类型和约束。数据库 会定期更新,以获取有关公司的最新数据。

数据库可以手动和数字方式维护。在这个数据无处不在的时代,数字数据库是优选和使用。数据库的大小取决于组织的数据和需求。

#it技术干货

相关文章

如果同一条记录同时多个进程可能对不同的字段进行修改,怎么保证列锁?

如果同一条记录同时多个进程可能对不同的字段进行修改,怎么保证列锁?

2023-10-13
memcached、Redis缓存的数据都是key-value的形式,那缓存时,具体是key、value分别是怎样的数据呢?

memcached、Redis缓存的数据都是key-value的形式,那缓存时,具体是key、value分别是怎样的数据呢?

2023-10-13
mysql如果一张表里面两个字段的值相同,则添加到第二张表里,怎么做?

mysql如果一张表里面两个字段的值相同,则添加到第二张表里,怎么做?

2023-10-13
数据库设计时保持单个表的独立性,但是表之间没有主外键强制的约束,这样设计的利弊是什么?

数据库设计时保持单个表的独立性,但是表之间没有主外键强制的约束,这样设计的利弊是什么?

2023-10-13

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取