问题标签 [cx-oracle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3622 浏览

python - cx_oracle: callfunc 可以返回列表吗?

我正在尝试编写一个 PL/SQL 函数,它返回一个整数数组,然后能够使用 cx_Oracles callfunc 调用它。我想我的 PL/SQL 函数是正确的,但我不知道如何用 cx_Oracle 调用它。

create or replace type test_type is table of NUMBER(10);

它适用于 sqlplus:

如何使用 cx_Oracle 获得此类函数的结果?那可能吗?

我找到了这个http://osdir.com/ml/python.db.cx-oracle/2005-06/msg00014.html但我真的不知道如何使用它。当我将类型定义更改为:

我得到:警告:类型创建时出现编译错误。

0 投票
2 回答
128 浏览

python - 我不明白为什么这个循环会以它的方式终止

我正在使用cx_Oracle带有 Python 2.7 的模块。我正在尝试提示用户输入用户 ID。然后程序将检查用户 ID 是否已经存在以及是否提示用户输入不同的用户 ID。execute 方法是一个辅助方法,它使用 cx_Oracle 中的 execute 方法与 Oracle 数据库进行交互。getInput 方法提示用户输入,然后根据正则表达式进行检查。

我知道我有这个错误,但我相信while循环开始执行的第一个操作是提示用户输入用户 ID。然后根据数据库检查用户 ID。for循环开始并检查返回的行是否ds.execute()与用户提供的 userID 相同。如果是,用户被告知使用另一个用户名并break退出for循环。该if语句然后检查用户是否存在,如果不存在则中断while循环。如果不是,则while循环迭代,因此提示用户输入不存在的用户 ID。

发生的情况是提示用户输入用户 ID,然后用户似乎没有进行任何检查,程序继续执行下一段代码。我在这里想念什么?我已经包含了一个指向文档的链接execute()。上述代码中的 execute 方法是以下辅助方法的一部分:

如果我需要提供更多信息,请告诉我。

编辑:我在循环doesUserExist = False开始后立即忘记了该行,所以我添加了该行。while

0 投票
1 回答
1219 浏览

python - apache+mod_wsgi下的cx_Oracle 5.1.1

如果我使用 cx_Oracle 5.0.4,我可以从 python 控制台连接,并在 apache+django+mod_wsgi 下工作

但是当我更新 cx_Oracle 5.1.1 时,我可以从 python 控制台连接,但是相同的代码在 apache+django+mod_wsgi 下不起作用

文件“C:\Python27\lib\site-packages\django\db\backends\oracle\base.py”,第 24 行,在
raise ImproperlyConfigured("Error loading cx_Oracle module: %s" % e)
TemplateSyntaxError: Caught ImproperlyConfigured while渲染:加载 cx_Oracle 模块时出错:DLL 加载失败:找不到指定的模块。

PS:python 2.7
PSS:我已经安装了 MSVC 2008 Redistributable x86

0 投票
2 回答
3937 浏览

python - 使用 MacOSX 导入 cx_Oracle (python)

在 python 脚本中导入 cx_Oracle 失败。

我安装了 cx_Oracle,使用“pip install cx_oracle” - 工作正常,报告安装。

现在当我尝试:

我收到以下错误

其他信息:

Python 版本 2.7 / mac os 10.7.2 (Lion)

甲骨文 10.2

另外,我的 ORACLE_HOME 文件夹中根本没有 /bin 目录,我只安装了即时客户端和 SDK。

ox_Oracle

(发现很多关于安装 cx_Oracle 的问题,但没有关于这个 - 谢谢)

0 投票
1 回答
1270 浏览

oracle - 尝试将数据插入 Oracle 中的表时出错

我正在使用 python 2.7 和 cx_Oracle 模块。当我尝试运行以下查询时:

使用Cursor.execute()fromcx_Oracle我得到以下错误:

当我把它放在 SQL plus 中时,它说:

UPDATE如果用户已经在购物车中拥有所选书籍并且INSERT如果购物车中没有他们想要的书籍的当前副本,我正在尝试制作购物车。

执行方法如下所示:

并且每个参数都是用户使用生成的rawinput(),然后根据正则表达式进行检查。

0 投票
3 回答
10254 浏览

python - 将python连接到oracle

我已经安装了 oracle client 和 oracle client-dev,并设置了 ORACLE_HOME 环境变量。然而,当我尝试安装 tux_oracle(python setup.py build)时,我得到以下信息: 致命错误:oci.h:没有这样的文件或目录

0 投票
1 回答
2843 浏览

python - Mac OS Lion 上的 cx_Oracle

我按照此处http://www.cs.utexas.edu/~mitra/csSpring2011/cs327/cx_mac.html的描述进行了步骤, 并在Mac OS Lion x64上安装了cx_Oracle

导入 cx_Oracle - 成功完成

但是当我尝试使用它时——我得到一个错误窗口:

Python 在使用 libclntsh.dylib.10.1 插件时意外退出

和终端中的错误消息:

分段错误:11

有人知道如何修理吗?

0 投票
1 回答
203 浏览

django - django oraclepool 只使用 2 个会话,为什么?

我在 apache+mod_wsgi 下使用 django 1.2.1 + cx_Oracle 5.0.4 11g + django oraclepool 0.7 + oracle 客户端 11.2

在 django oraclepool 设置中,我设置了 min:4 max:16 increment:1 当应用程序启动时我看到来自 httpd.exe 的 4 个会话当我开始执行时(64 个并发线程)测试只有 2 个会话处于活动状态,2 个处于非活动状态(如果我设置最小值:8,2 激活,6 非激活),

为什么?我需要什么以及如何配置才能开始使用 djangopool 超过 2 个会话

UPD:服务器为双核,操作系统:windows server 2008r2

0 投票
2 回答
1564 浏览

python - cx_Oracle + oracle实例客户端11g挂机

下一个代码适用于即时客户端 10g,但在使用 oracle 即时客户端 11g 时挂起,挂在 pool.release(conN) 上,

PS:我看了一下cx_Oracle源代码,网上的seesionpool.c

任何想法如何解决它?

PPS:操作系统 Windows XP 和 2008R2

0 投票
0 回答
809 浏览

python - 为什么我在运行查询时收到 cx_Oracle 的“未处理的数据类型 7”错误?

首先,我正在处理的 SQL:

我已经验证了数据库中的数据是正确的(在放入一些测试数据之后)。我现在正在尝试编写一个JSONEncoder用于将 Oracle 类型解析address_t为可序列化 JSON 类型的代码。这是我一直在玩的功能:

在它说的那一行Zipcode:,我已经拥有了该address_t类型的所有其他属性,并且它们打印得很好。有任何想法吗?

这是实际的错误: