问题标签 [odbc]

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 投票
2 回答
1893 浏览

odbc - 从 SPSS,从 SQL Server Analysis Services 导入数据

我想知道是否有一种简单的方法可以将数据从分析服务 (SSAS) 加载到 SPSS 中。

SPSS 提供了一个将 SPSS 功能放在分析服务器上的产品,但对我来说这是倒退的。我不想了解 SPSS 或让办公室的 SPSS 用户学习其他内容。

我只想将分析服务数据提供给 SPSS 中的 SPSS 用户。

0 投票
2 回答
3208 浏览

delphi - 将 ODBC 数据源与 Delphi 2006+ 连接的正确方法?

连接 ODBC 数据源并执行一些 SQL 语句的正确方法是什么?

TQuery 和其他 BDE 组件可以做到这一点,但如果我理解正确,它们现在已被弃用了吗?

0 投票
4 回答
4666 浏览

sql-server - MS Access 查询设计在连接到 SQL Server 时挂起

Microsoft Access 是一种访问 MS SQL Server 后端数据库中数据的巧妙方法,但我在访问(可以这么说)大型数据表时总是遇到问题,尤其是在 Access 中尝试在结果和设计模式之间切换时。

Access 为我提供了许多漂亮的东西,其中最重要的是 Crosstabs,但这种与服务器的挂起连接让我有点抓狂!

是否有任何 MS Access 专家知道如何优化 ODBC 连接,因此当我只想调整和构建查询时,它不会执行看起来像是全表扫描的操作?

0 投票
22 回答
261474 浏览

oracle - Oracle ORA-12154:TNS:无法解析服务名称错误?

我是 SQL Server 用户。

我在一个使用 oracle 的项目中(我很少使用它)我需要创建一个 ODBC 连接,以便我可以通过 MS Access 访问一些数据我的机器上有一个名为 oraHome90 的应用程序。它似乎允许在“网络配置实用程序”中配置称为侦听器的东西,我认为还需要完成“本地网络服务名称配置”。IT 支持人员为我提供了这些信息来设置 ODBC 连接。我已经尝试了所有我能想到的组合。我可以通过一个成功通过“登录”到 oracle 服务器数据库的测试的测试。当我尝试创建 ODBC 连接时,我收到以下错误:ORA-12154:TNS:无法解析服务名称。

假设我想从头开始,并且以下信息应该允许我连接到数据库......有什么建议或评论吗?注意:最终项目会有一个网站 .ASP 页面查询数据,但我必须首先证明我可以通过 MS Access 使用 ODBC 连接看到数据

0 投票
4 回答
665 浏览

sql - 为什么我通过 ODBC 调用的存储过程在同一位置失败?

我正在使用freeodbc++库来访问 MS SQL Server 2000 数据库(SP3?SP4?)上的数据。特别是,我正在运行一个特别长且令人讨厌的存储过程。我可以在 SQL Profiler 中观看该过程的执行,但是,它往往会在某个点停止处理。没有错误代码或异常抛出。如果我注释掉始终是最后一个语句的嵌套语句,它只会在注释之前稍微结束。我没有尝试从根本上评论整个该死的事情......我将查询超时设置为 300 秒。可调用语句通常会在 1 秒内返回,而不会真正完成 SP。

有任何想法吗?

UPDATE0:如果我通过查询分析器或其他工具运行 SP……它可以工作。只是通过我的 ODBC 连接失败了。

UPDATE1:当我注释掉代码时,执行会进一步进入 SP。让我觉得我遇到了超时或缓冲区限制。

0 投票
4 回答
1930 浏览

oracle - ODBC x64 oracle 问题

我有一个装有 Windows 2008 x64、MS Access 2007 和 Oracle 11g x64 的工作站,我使用 Access 通过 ODBC 连接到 Oracle。我是工作站的管理员(在管理员组中)。我以管理员身份运行 Access,但是当我想对 Oracle 进行 ODBC 调用时,它不起作用。

我该怎么做:我启动 MS Access 并创建一个直接查询。在属性对话框中,我去添加新的并出现选择数据源对话框。然后我使用机器数据源并单击新建,系统数据源 - 但 Oracle 的驱动程序不存在。

问候罗伯特:-)

0 投票
1 回答
527 浏览

oracle - 使用 Oracle ODBC 的准备语句与直接语句的差异

我正在使用与我的操作系统语言不同的排序规则的 Oracle 数据库。我正在使用 ODBC 驱动程序访问数据库。当我准备一个语句(例如“select * from x where=?”)时,它涉及数据库排序规则支持的特殊非 ASCII 字符,我正在查找带有字符的数据行。当我直接使用sql字符串中的参数执行选择时,找不到数据行。

0 投票
2 回答
3928 浏览

c# - 为什么 OdbcCommand.ExecuteScalar() 会抛出 AccessViolationException?

我有一段代码旨在从数据库表中提取文本描述并将它们保存到文本文件中。它看起来像这样(C# .NET):

此代码已成功将部分数据保存到 .txt 文件,但对于许多行,以下行会引发 AccessViolationException:

异常文本是“尝试读取或写入受保护的内存。这通常表明其他内存已损坏”。

该程序通常会在表的相同行上引发异常,但它似乎不是 100% 一致的。有时,过去抛出异常的数据会突然起作用。

毫无疑问,有些人想知道为什么我不只是在 getItemsCommand 中选择 ID、ITEMDESCRIPTION FROM ITEMS 并跳过第二个查询。实际上,我最初是这样做的,并且在使用 getItemsCommand.GetString() 时遇到了同样的错误。我担心数据集可能占用了太多内存,这可能是导致错误的原因。所以我决定尝试这种方法,看看它是否有帮助。它没有。有谁知道为什么会发生这种情况?

顺便说一句,ID 是一个 INT 并且 ITEMDESCRIPTION 是一个 VARCHAR(32000) 列。如果有什么不同,数据库是 Borland Interbase 6.0 (Ick!)

编辑:在描述抛出异常的位置时,我给出了错误的行!啊!!现在修好了。另外,到目前为止,我已经尝试了建议的方法,但它们没有帮助。但是,我发现只有数据库中非常旧的记录导致了这个错误,这很奇怪。如果我将查询更改为仅提取过去 5 年插入的记录,则没有问题。有人向我建议这可能是编码转换问题或类似的问题?

更新:解决了。这个问题原来是我们不太可靠的数据库软件的 ODBC 驱动程序中的一个错误。使用其他驱动程序的解决方法解决了该问题。

0 投票
3 回答
2349 浏览

sql-server - 如何从 T-SQL 中的 DSN 中选择表中的数据?

如何从只能通过 T-SQL MS SQL Server 中的 ODBC 数据源 (DSN) 访问的数据库中获取数据,任何版本?

0 投票
10 回答
250201 浏览

sql - SELECT 语句后需要行计数:最佳 SQL 方法是什么?

我正在尝试从单个表中选择一列(无连接),并且我需要行数的计数,最好是在开始检索行之前。我已经采用了两种方法来提供我需要的信息。

方法一:

然后

方法 2

我这样做是因为我的 SQL 驱动程序(SQL Native Client 9.0)不允许我在 SELECT 语句上使用 SQLRowCount,但我需要知道结果中的行数,以便在分配信息之前分配一个数组。不幸的是,在我的程序的这个区域中,使用动态分配的容器不是一个选项。

我担心可能会出现以下情况:

  • SELECT for count 发生
  • 出现另一条指令,添加或删除一行
  • SELECT for data 发生,突然数组大小错误。
    - 在最坏的情况下,这将尝试写入超出数组限制的数据并使我的程序崩溃。

方法 2 是否禁止此问题?

另外,这两种方法中的一种会更快吗?如果是这样,是哪个?

最后,是否有更好的方法我应该考虑(也许是一种指示驱动程序使用 SQLRowCount 返回 SELECT 结果中的行数的方法?)

对于那些询问的人,我正在使用带有上述 SQL 驱动程序(由 Microsoft 提供)的 Native C++。