【问题标题】:Can I connect my python script with Oracle database without downloading its client?我可以在不下载客户端的情况下将我的 python 脚本与 Oracle 数据库连接吗?
【发布时间】:2020-08-13 16:20:19
【问题描述】:

我有一个使用 cx_Oracle 和 Oracle 11g 的旧程序。该程序不可移植,因为用户需要下载 Oracle 11g 才能使用它。是否可以在我的脚本中使用 Oracle 数据库但不下载它,可能是使用任何在线数据库?

【问题讨论】:

标签: python-3.x oracle11g cx-oracle oracle19c


【解决方案1】:

Oracle 软件可从 Oracle 技术网here 下载。

如果你想使用在线数据库,Oracle 提供Oracle Cloud Free Tier,但我不认为它提供 11g,因为它已经很老了(很快就会被取消支持)。另外,我不知道您是否可以(或不能)将您的 Python 应用程序连接到它;您必须联系 Oracle 或等待知道该信息的其他人。

也许有人托管 11g,但我怀疑它是免费的 - 也许你最好的选择是免费下载和安装 Oracle 11g Express Edition (XE)

【讨论】:

  • 没问题,我可以手动修改我的代码。无论我使用什么数据库,我只想继续使用 SQL 查询。任何建议将不胜感激。例如,我可以轻松使用 sqlite3,但我怀疑它可以容纳多少数据。
  • 那么就是11g XE。安装简单,只需点击几下 NEXT-NEXT。
  • 当 XE 18c 可用时,为什么要使用 XE 11g? ! oracle.com/database/technologies/xe-downloads.html
  • 我能想到的两个原因,@Christopher:因为 OP 说他们在 Python 中使用 (d) 11g,并且因为它比后来的数据库版本更简单(PDB?CDB?嗯?)。
  • @Littlefoot 我不是那个意思。该程序仍然不可移植。如果我使用 sqlite3,我不需要任何额外的软件,它将是本地的。如果能搞到远程数据库就更好了。
【解决方案2】:

阅读您的问题后,我的理解是您需要一个可移植的数据库。由于您的脚本使用 cx_Oracle 连接到 Oracle 11g,我猜您在任何地方都使用了 SQL 查询。 如果您赶时间,我建议您使用 SQLite 而不是 cx_Oracle。尽管您可能需要修改一些关键字,但两者都有类似的语法来执行查询。 快速开始参考https://docs.python.org/3/library/sqlite3.html

【讨论】:

  • 谢谢,我会试试这个并回复你。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-29
  • 2011-12-22
  • 2011-07-29
  • 2014-05-27
相关资源
最近更新 更多