问题标签 [turbodbc]
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.
python - Databricks 上的 turbodbc - 此 turbodbc 安装不支持 Apache Arrow 扩展。请安装`pyarrow`包
我正在尝试在 Databricks - 运行时 7.2 上使用 turbodbc 和 Pyarrow 支持。Turbodbc 在没有 pyarrow 支持的情况下可以在同一个实例上很好地工作。从Databricks 7.2 发布页面上,它说 Pyarrow 已经是我已经验证为真实的。它带有 0.15.1。
但是,当我尝试使用 pyarrow 运行 turbodbc 时,我抛出了以下错误。
此 turbodbc 安装不支持 Apache Arrow 扩展。请安装
pyarrow
软件包。如果您从源代码构建了 turbodbc,您可能还需要重新安装 turbodbc 以编译扩展。
数据块基于 Ubuntu 18.04。我已确保安装了 init 脚本
我还尝试在库列表中再次指定 pyarrow,以便通过 pip 安装它,但没有运气。
任何帮助是极大的赞赏。
更新1:
尝试创建一个使用 conda 进行 python 包安装的 ML 集群。我仍然遇到同样的错误。
python - 通过 turbodc 将 dask 数据帧写入 mssql 时出错
我有一个 dask 数据框,它有 220 个分区和 7 列。我已经从 bcp 文件中导入了这个文件,并在 dask 中完成了一些争论。然后我想使用 turboodbc 将整个文件写入 mssql。我按如下方式连接到数据库:
然后我使用从一篇中型文章中找到的函数写入数据库中的测试表:
def turbo_write(mydb, df, table): """使用 turbodbc 将数据插入 sql。""" start = time.time() # 准备列 columns = '(' columns += ', '.join(df.列)列+=')'
这在我上传少量行时有效,如下所示:
当我尝试执行更多行时,它失败了:
我得到错误:
RuntimeError:无法将 Python 实例转换为 C++ 类型(在调试模式下编译以了解详细信息)
我如何将整个 dask 数据帧写入 mssql 而不会出现任何错误?
python - ModuleNotFoundError:运行 docker 映像时没有名为“turbodbc”的模块
我在我的代码中使用 Cloudera Hive ODBC 驱动程序,并且我正在尝试将应用程序容器化。下面是我的 Dockerfile,
构建映像正在成功,但是当我运行 docker 映像时,我看到以下错误
我在我的内部尝试了许多其他 ODBC Dockerfile
,但没有运气。任何帮助都会很棒。
python - Turbodbc - 从多语句查询中获取输出
我正在努力访问存储过程的结果,为我提供刚刚使用 Turbodbc 4.1.2、Python 3.7 和 SQL Server 2017 插入的行的标识。
我的程序按照以下几行运行:
我的 Turbodbc 代码如下所示:
在没有任何插入的情况下运行存储过程(即,仅“SELECT 4”),结果集返回正常。但是,当使用正确运行的插入运行时,我收到错误“turbodbc.exceptions.InterfaceError: No active result set”。该查询在 SSMS 中运行良好。
我猜这是因为我收到了两个结果集——一个用于插入,一个用于选择。我从关于 SO 的几个问题中看到 nextset 函数在pymssql和pyodbc中可用,但相同的功能在turbodbc中不可用。
如何使用 turbodbc 访问多语句查询的第二部分?这似乎是一个相对简单的问题,但我已经把头撞在墙上几个小时了。
python - turbodbc 错误“选项类型超出范围”
我正在尝试使用 turbodbc 从 CDK Kerridge DMS 中提取数据。这在 pyodbc 中运行良好。
我收到此错误:
回溯(最后一次调用):文件“C:\Users\Something.conda\envs\Conda36\lib\site-packages\turbodbc\exceptions.py”,第 41 行,在包装器中返回 f(*args, **kwds ) 文件“C:\Users\Something.conda\envs\Conda36\lib\site-packages\turbodbc\cursor.py”,第 131 行,执行 self.impl.prepare(sql) turbodbc_intern.Error: ODBC 错误状态: HY092 本机错误代码:0 消息:[Microsoft][ODBC Driver Manager] 选项类型超出范围
在处理上述异常的过程中,又出现了一个异常:
[Microsoft][ODBC Driver Manager] Option type out of range 按任意键继续。. .
python - 我想使用 turbodbc 进行 mysql-python 连接。你能帮我设置一下吗
我参考了此文档进行设置: https ://turbodbc.readthedocs.io/en/latest/pages/getting_started.html
由于我pip install turbodbc
给出了错误。我开始下载其中提到的先决条件。但在第 5 步(因此第 6 步)遇到错误
- 运行
.\bootstrap.bat
(这会生成 b2 可执行文件)。 - 运行
.\b2
(这会生成阶段目录和内容,需要几分钟才能运行)。
我出错了:.bootstrap.bat: command not found
我的增强版是boost_1_76_0
.
在此先感谢您的帮助
c++ - 尝试在 windows python3.7 上安装 turbodbc - 错误
试图让 turbodbc 在 Windows 上工作。
我尝试按照以下步骤(下方),但仍然收到错误消息。有人可以帮帮我吗!
如错误所述,首先您需要“Microsoft Visual C++ Build Tools”。您将在此页面上获得它:https ://visualstudio.microsoft.com/downloads/ 。向下滚动到“为 Visual Studio 构建工具”。下载它。
运行安装程序。选择“C++ 构建工具”进行安装。确保同时选择“Windows 10(或您喜欢的任何版本)SDK”以防止以后出现此错误 - https://github.com/openssl/openssl/issues/586
安装构建工具后,如果您尝试安装 Turbodbc (pip install turbodbc),您将看到另一个错误 - python 致命错误 C1083:无法打开包含文件:'boost/locale.hpp'。也就是说,这场战斗已经成功了一半。要解决此错误,请按照此处列出的步骤 - https://github.com/blue-yonder/turbodbc/issues/236。为了您的方便,我将它们复制到下面-
从https://www.boost.org/下载 boost (单击“当前版本”版本链接,在我的情况下为“版本 1.72.0”,然后下载 Windows zip 文件)。
在您的 PC 上的某个位置解压缩 zip 文件。
在命令提示符下,导航到 boost 顶级目录。
运行 .\bootstrap.bat(这会生成 b2 可执行文件)
运行 .\b2 (这会生成阶段目录和内容,需要几分钟才能运行)
设置 BOOST_ROOT 环境变量,例如 set BOOST_ROOT=C:\your\path\to\boost\boost_1_72_0\boost_1_72_0
运行 pip install turbodbc
日志: