python-cx_Oracle和数据源范例
作者:互联网
在Java数据源中实现了一种用于数据库访问的Java范例.该对象围绕数据库连接的创建创建有用的抽象. DataSource对象保留数据库配置,但仅在请求时创建数据库连接.这使您可以将所有数据库配置和初始化代码都放在一个位置,并且可以轻松更改数据库实现或使用模拟数据库进行测试.
我目前正在研究一个使用cx_Oracle的Python项目.在cx_Oracle中,可以直接从模块获取连接:
import cx_Oracle as dbapi
connection = dbapi.connect(connection_string)
# At this point I am assuming that a real connection has been made to the database.
# Is this true?
我正在尝试在cx_Oracle中找到与数据源的并行.我可以通过创建一个新类并包装cx_Oracle轻松地创建此代码,但是我想知道这是否是在Python中执行此操作的正确方法.
解决方法:
通过查看PEP-249: Python Database API Specification v2.0,您将找到有关如何在Python中访问数据库的相关信息.cx_Oracle符合此规范,许多Python的数据库驱动程序也是如此.
在本规范中,Connection对象代表数据库连接,但是没有内置池.诸如SQLAlchemy之类的工具确实提供了池化功能,尽管SQLAlchemy通常被标为ORM,但不必照此使用,它可以在SQL引擎之上提供漂亮的抽象.
如果您确实想进行对象关系映射,则SQLAlchemy可以开展业务,您可以考虑使用其自己的声明性语法,也可以考虑其他层(例如Elixir),该层位于SQLAlchemy之上,可以为更常见的用例提供更高的易用性.
标签:oracle,cx-oracle,python,database 来源: https://codeday.me/bug/20191107/2003415.html