Python-oracledb 项目教程

Python-oracledb 项目教程

python-oracledb Python driver for Oracle Database conforming to the Python DB API 2.0 specification. This is the renamed, new major release of cx_Oracle python-oracledb 项目地址: https://gitcode.com/gh_mirrors/py/python-oracledb

1. 项目的目录结构及介绍

python-oracledb/
├── CONTRIBUTING.md
├── LICENSE.txt
├── MANIFEST.in
├── NOTICE.txt
├── README.md
├── README.txt
├── SECURITY.md
├── THIRD_PARTY_LICENSES.txt
├── pyproject.toml
├── setup.cfg
├── setup.py
├── tox.ini
├── doc/
├── samples/
├── src/
│   └── oracledb/
├── tests/
└── utils/

目录结构介绍

  • CONTRIBUTING.md: 贡献指南,指导开发者如何为项目贡献代码。
  • LICENSE.txt: 项目的开源许可证文件。
  • MANIFEST.in: 用于指定在打包时需要包含的文件。
  • NOTICE.txt: 项目通知文件,包含版权声明等信息。
  • README.md: 项目的主文档,包含项目的基本介绍、安装和使用说明。
  • README.txt: 项目的文本格式介绍文件。
  • SECURITY.md: 安全指南,包含项目的安全漏洞披露流程。
  • THIRD_PARTY_LICENSES.txt: 第三方许可证文件,列出项目所依赖的第三方库的许可证。
  • pyproject.toml: 项目配置文件,用于定义项目的构建系统和其他元数据。
  • setup.cfg: 项目的配置文件,用于定义安装和打包的配置。
  • setup.py: 项目的安装脚本,用于安装项目及其依赖。
  • tox.ini: 用于定义项目的测试配置。
  • doc/: 项目的文档目录,包含详细的文档和教程。
  • samples/: 项目的示例代码目录,包含使用项目的示例代码。
  • src/oracledb/: 项目的源代码目录,包含Python驱动程序的核心代码。
  • tests/: 项目的测试代码目录,包含项目的单元测试和集成测试。
  • utils/: 项目的工具目录,包含项目使用的各种工具和脚本。

2. 项目的启动文件介绍

项目的启动文件主要是 setup.py,它是一个标准的Python安装脚本,用于安装项目及其依赖。通过运行以下命令可以安装项目:

python setup.py install

此外,项目的启动还可以通过 python -m pip install oracledb 命令来完成,这是推荐的安装方式。

3. 项目的配置文件介绍

setup.cfg

setup.cfg 是项目的配置文件,用于定义安装和打包的配置。以下是 setup.cfg 的部分内容示例:

[metadata]
name = oracledb
version = 2.4.1
description = Python driver for Oracle Database conforming to the Python DB API 2.0 specification
long_description = file: README.md
long_description_content_type = text/markdown
url = https://github.com/oracle/python-oracledb
author = Oracle
license = Apache License 2.0

pyproject.toml

pyproject.toml 是项目的配置文件,用于定义项目的构建系统和其他元数据。以下是 pyproject.toml 的部分内容示例:

[build-system]
requires = ["setuptools>=42", "wheel"]
build-backend = "setuptools.build_meta"

tox.ini

tox.ini 是项目的测试配置文件,用于定义项目的测试环境和测试命令。以下是 tox.ini 的部分内容示例:

[tox]
envlist = py38, py39, py310

[testenv]
deps =
    pytest
commands =
    pytest tests/

通过这些配置文件,开发者可以方便地管理和配置项目的安装、打包和测试过程。

python-oracledb Python driver for Oracle Database conforming to the Python DB API 2.0 specification. This is the renamed, new major release of cx_Oracle python-oracledb 项目地址: https://gitcode.com/gh_mirrors/py/python-oracledb

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

SQLAlchemy 是 Python 的 SQL 工具包及 ORM (对象关系映射) 库。它给全种类的 SQL 数据库带来了强大的功能,并且可以让你用 Python 类的方式来操作数据库。 ### SQLAlchemy + Oracle 使用教程 #### 步骤一:安装依赖 首先你需要确保已经安装了Python环境以及pip工具,然后通过 pip 安装 `sqlalchemy` 和兼容Oracle的数据连接驱动如 `cx_Oracle` 或者更现代的选择之一比如 `oracledb`: ```bash pip install sqlalchemy cx_Oracle # or "pip install oracledb" ``` 如果选择使用官方推荐的新版驱动程序,则应改为: ```bash pip install sqlalchemy oracledb ``` #### 步骤二:配置引擎并创建会话 接下来,在你的项目文件里引入必要的模块并且初始化与数据库之间的联系: ```python from sqlalchemy import create_engine # 如果采用的是cx_oracle的话url格式可能有所不同 engine = create_engine('oracle+oracledb://用户名:密码@hostname:port/?service_name=your_service') connection = engine.connect() try: result = connection.execute("select * from your_table") for row in result: print(row) finally: connection.close() ``` 请注意这里的 URL 格式取决于所使用的驱动;对于较新的 `oracledb` 模块来说,这应该是一个标准的方式去建立连接字符串。 #### 步骤三:定义模型类(ORM) 为了能够利用到 SQLAlchemy 强大的 OR 映射特性,你可以基于 Declarative Base 来构建自己的数据表对应的 Python 类: ```python from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker Base = declarative_base() class MyTable(Base): __tablename__ = 'mytable' id = Column(Integer, primary_key=True) name = Column(String(50)) description = Column(Text) Session = sessionmaker(bind=engine) session = Session() ``` 现在你就可以像下面这样做增删改查的操作了: - 新建记录 ```python new_entry = MyTable(name='example',description='an example entry') session.add(new_entry) session.commit() ``` - 更新现有条目 ```python item_to_update=session.query(MyTable).filter_by(id=some_id).first() if item_to_update is not None: item_to_update.name=new_value session.commit() ``` - 删除特定行 ```python target_row=session.query(MyTable).get(target_id) if target_row is not None: session.delete(target_row) session.commit() ``` 以上就是如何在 Python 中结合 SQLAlchemy 和 Oracle 进行开发的基础介绍了。当然实际应用远不止这么简单,但这是一个很好的起点!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邓越浪Henry

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值