通过与 Jira 对比,让您更全面了解 PingCode

  • 首页
  • 需求与产品管理
  • 项目管理
  • 测试与缺陷管理
  • 知识管理
  • 效能度量
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案

25人以下免费

目录

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

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

一、除了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 等。

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

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

相关文章