问题标签 [nanodbc]

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 投票
9 回答
19417 浏览

r - R DBI ODBC 错误:nanodbc/nanodbc.cpp:3110:07009:[Microsoft][ODBC Driver 13 for SQL Server]Invalid Descriptor Index

我继续阅读DBI/ODBCis faster than RODBC,所以我尝试如下:

我可以成功连接到 DSN,但查询如下:

给我以下错误:

result_fetch(res@ptr, n, ...) 中的错误:nanodbc/nanodbc.cpp:3110:07009:[Microsoft][ODBC Driver 13 for SQL Server]Invalid Descriptor Index

我究竟做错了什么 ?请,没有RODBC解决方案。谢谢!

0 投票
1 回答
1469 浏览

r - 将 R 连接到 MS Access 64 位 Windows

我正在尝试将 R 与 Windows 7 64 位机器上的 MS Access 数据库连接起来。

我也尝试过使用https://www.connectionstrings.com/access/odbc指定的连接字符串打包,但同样无法连接

我究竟做错了什么?

0 投票
2 回答
5751 浏览

r - 将 MS Access 数据库连接到 R

我想用 DBI 包将 MS Access 数据库连接到 R。我试试这个:

library(DBI) con <- dbConnect(odbc::odbc(), "BASE_MEPSA")

我有这个错误

错误:nanodbc/nanodbc.cpp:950: HY024: [Microsoft][Pilote ODBC Microsoft Access] « (Inconnu) »

但是使用 RODBC 我没有问题

library(RODBC) base1<-odbcDriverConnect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:/Users/IPS/Desktop/divers/dt/stateduc_R/BASE_MEPSA.mdb")

如何使用 DBI 包将 MS Access 连接到 R?

0 投票
1 回答
560 浏览

r - 如何使用 dplyr 访问不在默认 Oracle 模式中的表?

随着 的发布dplyr 0.7.0,现在据说可以很容易地使用该odbc软件包连接到 Oracle。但是,我在访问不在默认模式内的表时遇到了问题(对我来说,这是我的用户名)。例如,假设TEST_TABLEschema 中有表TEST_SCHEMA。然后,获取数据的示例 SQL 语法将是:select * from TEST_SCHEMA.TEST_TABLE'.

为了在`dplyr中做同样的事情,我正在尝试以下操作:

现在,这会导致错误消息:

我认为这里的问题是双引号,如:

工作正常。

0 投票
1 回答
878 浏览

c++ - nanodbc 从 Linux 连接到 MSSQL

当我尝试从 Linux 连接到 MSSQL 时,我得到一个“无效的属性值”。

我当前的 /etc/odbcinst.ini 文件如下所示:

我的 /etc/odbc.ini 文件如下所示(已删除信息):

如果我运行 isql,我可以使用以下命令进行连接:

在与 nanodbc 进行连接之前,我打印出将使用的连接字符串,即:

然后我做: nanodbc::connection(connectionString); 这是我得到的地方

错误信息。

0 投票
0 回答
44 浏览

c++ - Nanodbc:值不适合类型字符(2)错误

我有一个类似的 postgresql 表

并使用存储桶 nanodbc 请求插入其中。喜欢

我得到“ОШИБКА: значение не умещается в тип character(2);” (“错误:值不适合类型字符(2)”)

在数据库中增加到 character(9) 没有帮助。我看到了读取长度为 255 的 ODBCGetFieldDescription 之类的逻辑,我在 statement.impl->bind_len_or_null_[0] 中看到了 255。

有人知道修复或解决方法吗?我填写了一个问题https://github.com/nanodbc/nanodbc/issues/173,也许一位支持者写道,我使用的是旧版本 2.1,并且有一些关于字符串的修复。在主分支中。我使用 Visual Studio 2013 并且不再支持它......

Postgresql 9.3.3,最新的 ODBC 驱动程序,Win 7 x64

0 投票
1 回答
490 浏览

c++ - nanodbc 错误 LNK2019:未解析的外部符号 - 在基本连接上

我正在尝试使用 ODBC 驱动程序使用 nanodbc 库连接到 MySQL 数据库,这是 ODBC 的 C++ 包装器,但我得到了error LNK2019: unresolved external symbol

我在 nanodbc.lib 所在的附加库目录中添加了安装库目录的路径。我什至在我的源目录中复制了 nanodbc.lib 但仍然没有运气。

我已将 nanodbc.lib 添加到 Properties->Linker->Input->Additional Directories 以防万一#pragma comment(lib, "nanodbc.lib")不工作但它仍然不工作。

最糟糕的部分是相同的代码在现有项目中工作(具有不同的连接字符串)。

工具:Microsoft Visual Studio Community 2017 版本 15.9.11

包管理器:vcpkg

操作系统:Windows 10 专业版 64 位

语言标准:C++17

代码 :

错误 :

0 投票
1 回答
109 浏览

r - 带有Access DB的R中的ODBC是否存在语言问题?

我正在使用连接到本地 Access 数据库的 R 脚本。为此,我在 R 中使用了“odbc”包,并在 Windows 中创建了一个 odbc 驱动程序。它在我的机器上运行良好。我遇到的问题是,在语言设置与英语不同的外国计算机上运行脚本时,它无法连接到数据库。两台机器都运行 Windows 64 位,Access 和 R 在 64 位上。运行以下代码:

导致以下错误消息:

connection_info(ptr) 中的错误:nanodbc/nanodbc.cpp:1072:

我还没有找到解决方案,我正在考虑使用另一个数据库。

0 投票
1 回答
837 浏览

r - 如何查找特定于 ODBC 驱动程序的参数

有没有办法以编程方式发现 ODBC 连接的命名参数?

例如,使用“ODBC Driver 17 for SQL Server”,ODBC 数据源管理器(在 Windows 中)允许使用“登录 ID”和“密码”进行身份验证,但在以编程方式连接时,我们需要分别使用uid=pwd=。这两个配置点在配置文档中明确列出(例如,https ://db.rstudio.com/databases/microsoft-sql-server/ ),但是驱动程序支持的其他几个配置选项较少或不支持- 记录在案。

(对于 SQL Server,还有更多文档,包括https://docs.microsoft.com/en-us/sql/connect/odbc/windows/driver-aware-connection-pooling-in-the-odbc-driver-for -sql-server?view=sql-server-ver15,它列出了几个其他参数(尽管不是它们可能的值)。这适用于这个驱动程序,虽然由于这个页面没有为驱动程序 17 更新,我们必须假设所有选项不变。)

可以通过编程方式了解可用的驱动程序以及可用的预定义数据源:

但没有发现连接参数。也许类似于这个不存在的功能:

(我在这里以 SQL Server 为例,但我对更通用的方法感兴趣。而且由于我正在寻找编程机制,我宁愿避免建议阅读每个驱动程序的文档。)

(我不反对非 R 方法。)


一些无效的非 R 尝试。使用 mssql odbc 驱动程序库作为具有已知参数模式的示例。

0 投票
0 回答
118 浏览

c++ - Nanodbc 中包含表变量的查询失败

我有一个声明表变量的查询。似乎 nanodbc 无法获取数据,尽管在 SQL 服务器上直接执行查询时可以正常工作。这是否意味着 nanodbc 不支持复杂的查询?

环境

  • nanodbc 版本:2.14
  • DBMS 名称/版本:MS SQL Server 2017
  • ODBC 连接字符串:
  • 操作系统和编译器:Windows、Visual C++ 2019
  • CMake 设置:

实际行为

包含表变量的 sql 查询不起作用。

预期行为

包含表变量的 sql 查询应该可以工作。

最小的工作示例


通过在下面提到的 David 和 Dan 建议的查询的开头添加“set nocount on”来解决上述问题。

我要解决的问题实际上要复杂一些。我想运行参数化查询。

有人可以帮忙吗?谢谢。