问题标签 [jaydebeapi]

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 回答
691 浏览

python - Python 无法连接 Oracle 数据库,不支持 close_fds

我有这个小脚本,它试图连接到运行 oracle 数据库(11g)的服务器。

抛出异常的输出:

作为参考,我主要使用连接到 oracle 数据库的小型教程。他们的代码看起来基本相同。

通过寻找解决方案,我发现 python 应该支持 2.6.x 版本的 close_fds

我不确定从哪里开始寻找。

有关 jpype 和 jaydebaapi 的更多信息:

两者都是通过pip.

0 投票
1 回答
1358 浏览

python - 通过 Python 中的 JayDeBeApi 在 Oracle 11.2.0 上调用过程

我正在尝试调用dbms_random.seed(42)我的数据库,请参阅ref。我需要使用 python 和JayDeBeApi连接器。到目前为止,我只能select毫无问题地执行语句。我不明白我做错了什么。

似乎JayDeBeApi没有提供callproc方法,所以我不能使用它:

我天真地尝试过:

但这会导致:Error: ORA-00900: invalid SQL statement

我尝试了两种似乎具有正确语法的解决方案,但由于生成器不是确定性的,我相信它们实际上失败了:

使用begin/end

使用call

所以我的问题是:我如何dbms_random.seed(42)调用Oracleusing JayDeBeApi?作为一个附带问题,我如何检查语句是否实际上未能执行(没有引发异常并且执行的返回值未定义。)

更新:

事实上,种子初始化正在按预期工作,因为结果是我所期望的:

但是,对于我的随机查询选择,我仍然看到一些奇怪的行为:

由于某种原因,在后一种情况下,DBMS_RANDOM.RANDOM实际上是随机的......

0 投票
1 回答
1595 浏览

python - 如果有 2 个驱动程序文件,Python 将 JPype 添加到 Jaydebeapi 连接?

下面是我使用 Jaydebeapi 通过 JDBC 连接连接到 Teradata 的代码。当我使用 razorsql GUI 运行查询时,只需 15 秒。当我通过下面的代码运行它时,运行 query1 需要 20 多分钟。

Jaydebeapi 有什么问题,或者我可以通过优化我的查询/使用 Jpype 来使其更快吗?

0 投票
2 回答
2224 浏览

sql-server - Robotframework + JayDeBeApi + SQLServer 给出 SQLServerException:当 AutoCommit 模式设置为“true”时无法调用回滚操作

我使用robotframework DatabaseLibrary、JayDeBeApi、MS SQL Server JDBC 驱动程序设置robotframework 测试并成功连接。但是,当运行任何 sql 时,当 AutoCommit 模式设置为“true”时,我得到SQLServerException:无法调用回滚操作。

我尝试通过在 jdbc 连接 url 上添加“autoCommit=false”或在 sql 语句中添加“SET IMPLICIT_TRANSACTIONS ON”甚至检查 SQL Server Management Studio 上的 SET IMPLICIT_TRANSACTIONS ANSI 选项来关闭 AutoCommit,但这些尝试都没有运气。

这是robotframework maven插件设置

pom.xml

下面是机器人测试

dbTest.robot

这是我运行机器人测试时遇到的错误

我对此所做的一个激进的解决方案是修改robotframework DatabaseLibary connection_manager.py,将jaydebeapi连接上的autoCommit设置为false,如下面的self._dbconnection.jconn.setAutoCommit(False),但如果有的话,我希望知道比这更好的解决方案。

{你的 python virtualenv}/site-packages/DatabaseLibrary/connection_manager.py

0 投票
0 回答
1029 浏览

jdbc - Jaydebeapi 和 sslTrustStoreLocation

我使用以下 URL 连接到我的 db2 数据库:

使用松鼠。

现在我正在尝试使用 jaydebeapi 使用相同的 URL 字符串从 python 连接,但它失败了

jpype._异常。SqlSyntaxErrorExceptionPyRaisable:com.ibm.db2.jcc.am.SqlSyntaxErrorException:[jcc][10165][10051][4.20.4] 无效的数据库 URL 语法:jdbc:db2://myhost:9999/mydb:sslConnection=true;sslTrustStoreLocation =/家/我的名字/somekey.jks。错误代码=-4461,SQLSTATE=42815

通过 jaydebeapi 传递密钥库文件的推荐方法是什么?

0 投票
1 回答
1879 浏览

python - 使用 JDBC、Python 和 JayDeBeApi 连接到 Filemaker 数据库

我正在尝试编写一个 AWS Lambda Python 包,它将通过 JDBC 连接到 FileMaker 数据库。为了进行测试,我使用 Lambda Linux AMI 启动了一个 EC2 实例,并创建了一个我正在测试的 virtualenv (/venv)。我使用 WinSCP 将 fmjdbc.jar 上传到实例到 /venv/lib/ fmjdbc.jar。该代码使用JayDeBeApi,遵循此处的用法示例:https ://pypi.python.org/pypi/JayDeBeApi/#usage

到目前为止,我的代码如下:

这给了我错误:

如何让 Python 的虚拟环境读取 jdbc 驱动程序?我希望最终让这段代码在 Lambda 包中工作,所以我希望有一个可以集成到 Python 代码中的解决方案,可以在新创建的服务器上重复工作。

0 投票
1 回答
1058 浏览

python - 在 Python 2/3 中何时使用 pyodbc 以及何时使用 jaydebeapi?

正如标题所说,一个简单的问题......在 Python 2/3 中何时使用 pyodbc 以及何时使用 jaydebeapi?

让我详细说明几个示例场景......

  1. 如果我是一名解决方案架构师,并且正在研究一个 Pyramid Web 服务器,它希望访问多种 RDBMS 类型(HSQLDB、Maria、Oracle 等),并期望在单片 Web 服务器中实现高并发和延迟性能,这范式会被选择吗?为什么?

  2. 如果我要实现一个企业微服务解决方案(又名新的 SOA),每个微服务都访问特定的目标 RDBMS,但每个微服务都有重负载和性能延迟要求,会选择哪种范式?为什么?

传统上,JDBC 在需要良好并发性的大型企业解决方案中表现得更好。Python中是否普遍存在相同的特质?除了上面提到的两种方法之外,还有其他方法吗?

我是 Python 新手,所以如果我的问题没有意义,请耐心等待,我会尝试进一步详细说明。最好从高级解决方案设计中考虑我的问题,然后从头开始作为开发人员。如果你是 sol 架构师,你会要求什么作为范式?

0 投票
1 回答
3223 浏览

python - 在 Python 与 MATLAB 中连接到 JDBC 数据库

我正在尝试用 Python 连接到 SQL 数据库,但我很难找到连接到 JDBC 的文档/示例。我可以使用以下代码在 MATLAB 中执行此操作:

我想在 Python 中做到这一点。由于 JDBC,我认为我不能使用 pymssql 或 pyodbc(我已经尝试过)。我已经尝试过,但失败了,使用以下方法:

在 Python 中实现这一点的任何帮助都会很棒,谢谢!

0 投票
2 回答
11212 浏览

java - Python > 使用 JDBC 连接到 Oracle 服务名称 (jaydebeapi)

此示例代码用于在 Python 中连接到 Oracle SID。

我们如何连接到 Oracle 服务名称?

0 投票
2 回答
15234 浏览

python-2.7 - 将 Python 连接到 H2

我正在尝试建立从 python2.7 到 H2 的连接(h2-1.4.193.jar - 最新)

H2(正在运行且可用):java -Dh2.bindAddress=127.0.0.1 -cp "E:\Dir\h2-1.4.193.jar;%H2DRIVERS%;%CLASSPATH%" org.h2.tools.Server -tcpPort 15081 -baseDir E:\Dir\db

对于我正在使用的python jaydebeapi

结果每次我得到一个错误:Process finished with exit code -1073741819 (0xC0000005) 你对这个案子有什么想法吗?或者也许我可以使用其他东西来代替jaydebeapi?