问题标签 [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 OSX 安装错误

所以我在这里按照这些说明安装 Oracle InstantClient,

在 Mac OS/X 上安装 Oracle Instantclient 而不设置环境变量?

但是当我尝试安装 cx_oracle 时,我得到以下堆栈跟踪,

我在这里做错了什么?当我安装 InstantClient 时,我错过了什么吗?

复制的库列表

0 投票
3 回答
7303 浏览

python - 如何解决 Python cx_oracle 中的 ORA-01704: string literal too long 错误?

我正在尝试使用 Python cx_oracle 更新表中的条目。该列名为“模板”,它的数据类型为 CLOB。

这是我的代码:

当我这样做时,我收到一个错误,说字符串文字太长。模板变量包含大约 26000 个字符。我该如何解决这个问题?

编辑:

我发现了这个: http: //osdir.com/ml/python.db.cx-oracle/2005-04/msg00003.html
所以我尝试了这个:

我得到一个“ORA-01036:非法变量名/数字错误”

编辑2:

所以这是我现在的代码:

我现在收到 ORA-00911: invalid character 错误。

0 投票
5 回答
33462 浏览

python - 如何在 Python 中读取 cx_Oracle.LOB 数据?

我有这个代码:

当我这样做时print rows,我得到了这个:

但是,当我这样做时print template.read(),我收到此错误:

cx_Oracle.DatabaseError:句柄无效!

我如何获取和读取这些数据?谢谢。

0 投票
2 回答
2357 浏览

django - 如何在 CentOS 6 上导入 cx_Oracle?

我很难让 Django 与我的 Apache/mod_wsgi 安装一起访问 Oracle。我在 CentOS 6 主机上运行此设置,并且在我的 Apache 日志中收到此错误:

如果我尝试cx_Oracle从 Python 命令行导入,它在 root 和 apache 用户中都可以正常工作。我正确设置了ORACLE_HOMEand LD_LIBRARY_PATH( $ORACLE_HOME/lib):在~/.bashrc, /etc/ld.so.conf.d/oracle.conf, ~/.bash_profile, 任何我可以设置环境变量的地方。

我也尝试过对 in 进行硬链接或符号链接$ORACLE_HOME/lib/libclntsh.so.10.1,但无论我从文件中发出/usr/lib多少个,我都收到了权限错误。chmod 777/usr/usr/lib

我添加了andORACLE_HOME没有改变。LD_LIBRARY_PATH/etc/sysconfig/httpd

显然,此错误仅在 Apache 用户运行 import cx_Oracle 命令时发生,尽管使用此用户登录我可以从 Python 解释器运行该命令。

0 投票
2 回答
8140 浏览

python - 使用 python 从 cx_oracle blob 输出图像

我已将图像存储在 BLOB 列中的 oracle 表中。我使用 JAVA 读取和输出图像并写入数据。我想用 python 做同样的事情(获取我的图像并分发它)。我正在使用 Flask 框架和 cx_Oracle。

我设法将我的 BLOB 内容放入我的应用程序中,但我不确定如何从中生成图像。

我知道在Java中我使用过:

其中 doc.getContent() 是我的 BLOB 内容。

0 投票
1 回答
6593 浏览

python - python 和 cx_Oracle - 动态 cursor.setinputsizes

我正在使用 cx_Oracle 从一个数据库中选择行,然后将这些行插入到另一个数据库中的表中。第二个表的列与第一个选择匹配。所以我有(简化):

这很好用,但我的问题是如何避免 setinputsizes 中的硬编码(我有更多列)。我可以从 db1_cursor.description 中获取列类型,但我不确定如何将这些输入到 setinputsizes。即如何将列表传递给 setinputsizes 而不是参数?希望这是有道理的——python 和 cx_Oracle 的新手

0 投票
1 回答
1442 浏览

python - 如何在python中将十六进制字符串转换为二进制以使用cx_oracle插入

我有一个包含 16 位十六进制数字列表的文本文件(例如“61C7393AA9B3474DB081C7B7CCE1C545”),我需要使用 cx_Oracle 将它们插入一个 Oracle RAW 列。我试过这个:

但它因 cx_Oracle.DatabaseError: ORA-01036: 非法变量名称/编号而失败。在调用 executemany 之前,我是否需要在 python 中将值转换为二进制?如果是这样怎么办?注意,相同的 sql 适用于 cursor.execute 和单个值,它仅适用于我遇到问题的列表。

0 投票
1 回答
3869 浏览

python - 如何使用 cx_Oracle 运行非查询 sql 命令?

我正在尝试使用 cx_oracle 运行这些命令:

所以这是我的 Python 代码:

当我运行此代码时,我收到此错误:

cx_Oracle.InterfaceError:不是查询

那么如何运行这些不是使用 cx_oracle 查询的 sql 命令呢?

编辑:

进行更改后,这就是我现在所拥有的:

当我运行这个时,我得到这个错误:

文件“N:\App\MainWidget.py”,第 456 行,在 myFunc
'config_id' 中:6 })
cx_Oracle.DatabaseError: ORA-01858: 在预期有数字的地方发现了非数字字符
ORA-06512: 在行1

另外,我该如何提交?

0 投票
1 回答
1111 浏览

python - Python 的 cx_oracle callproc 函数出错

我有这个代码:

当我运行这个时,我得到这个错误:

文件“N:\app\MainWidget.py”,第 453 行,在 myFunc
curs.callproc('add_command_pkg.add_command', [], { 'command_id' : 7, 'session_id' : None, 'expiry _time' : 'sysdate + 7', 'config_id' : 6 })
cx_Oracle.DatabaseError: ORA-01858: 在预期有数字的地方发现了一个非数字字符 ORA-06512: 在第 1 行

我传递了什么参数错误,我该如何解决?

编辑:

命令签名:

另外,我该如何提交?

0 投票
1 回答
4512 浏览

python - 使用 cx_Oracle callfunc 获取 oracle 对象

我正在尝试使用 cx_Oracle 的 cursor.callfunc() 调用返回 oracle 对象的 oracle pl/sql 函数,但无法使其正常工作,并且在文档和网络上都没有找到帮助。我的代码:

有人使用 callfunc 成功获取了 oracle 对象吗?

提前谢谢了。