问题标签 [ado]

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

xml - 使用“保存”方法使用 ado 对象更改 xml 导出的字段精度

我正在开发一个 VB6 应用程序,该应用程序使用 ADODB.Recordset 对象通过“保存”方法将数据转储到 .xml 文件,如下所示:

其中 strDst 是描述目的地的字符串。

现在,对于某些表,数据库中有一些行是浮点数/双精度数。例如,表 TABLE 包含一个浮点类型的 MEASURE 列。

问题: 是否可以控制写入 .xml 文件的 MEASURE 的压力?

例如,如果度量为 1.23456789,是否可以在输出文件中包含 measure="1.234" ?

想法: ADO 记录集对于数据库的每条记录都有一个“字段”类型的“字段”集合。字段的“精度”属性存在,但“大部分”是只读的。通过查看 MSDN 的帮助,还不清楚何时可以编写它。它可以以某种方式使用吗?

限制: 我确实想使用“保存”方法。我想知道是否可以使用它以避免编写我自己的方法。

背景: 目的是将从数据库中提取的大量数据通过长距离通道传输到另一个系统。在该系统中,数据被加载到数据库中进行初步分析。瓶颈是通道和现有的数据提取应用程序,该应用程序通过某种算法选择要传输的表。.xml 文件以高压缩率压缩,但数量仍然太多,因此我们决定删除一些不太重要的数据。

边问题(参考 onedaywhen 的解决方案) 感谢 onedaywhen 到目前为止的回答。我以不同的方式使用它,但它已经有很大帮助(+1)。出现的问题是大部分值都在所需位置四舍五入,但是写入.xml时,出现了一种二进制到十进制的转换错误。例如 3.123 变为“3.1230000000000002”。

0 投票
6 回答
5020 浏览

delphi - 我怎么能在德尔福做到这一点?

我正在将应用程序从 BDE 转换为 ADO。

在 BDE 下,如果查询是打开的并且您调用了“Sql.Clear”,它将自动关闭数据集。

但是,在 TADOQuery 下情况并非如此,它会引发异常“无法在关闭的数据集上执行操作”。

我们的很多遗留代码都依赖于旧的 BDE 行为,所以我从代码中得到很多运行时错误,如下例所示。

我想覆盖我的 TADOCustomQuery 类的 Sql.Clear 方法,以便它包含一个“.Close”命令。我怎样才能做到这一点?

“.Clear”方法在 SQL 属性上,该属性是 TWideStrings 类型。我真正的问题是:如何在 TADOQuery 的后代上覆盖 TWideStrings.Clear 方法?

我已经有一个自定义的 TADOQuery 组件,它用于 SQL 属性:

这是一些代码来演示我遇到的问题:

0 投票
1 回答
1584 浏览

excel - ASP:如何从 Excel 中的合并单元格导入数据?

我需要从 excel 文件中导入数据,但某些字段是合并单元格。

如何确定一个字段是否已合并,以及该字段中合并了多少个单元格?

我的代码是这样的:

数据是这样的:

甲类

名称 1 描述 1

名称 2 描述 2

B类

名称 3 描述 3

名称 4 描述 4

非常感谢!!

0 投票
3 回答
3061 浏览

python - 问题通过 Python 使用 ADO 将数据插入 MS Access 数据库

[编辑2:下面的答案中的更多信息和调试...]

我正在编写一个 python 脚本来将 MS Access 数据库导出到一系列文本文件中,以实现更有意义的版本控制(我知道 - 为什么是 Access?为什么我不使用现有的解决方案?假设限制不是技术性质)。

我已经通过 comtypes 库使用 ADO 和 ADOX 成功导出了数据库的全部内容和结构,但是我在重新导入数据时遇到了问题。

我将每个表的内容导出到一个文本文件中,每行都有一个列表,如下所示:

以及导入所述文件的以下功能:

除了数值(双精度和整数)被插入为零外,一切正常。关于问题出在我的代码、eval、comtypes 还是 ADO 的任何想法?

编辑:我已经解决了插入数字的问题 - 将它们转换为字符串(!)似乎解决了双精度和整数字段的问题。

但是,我现在有一个不同的问题,以前被上述内容所掩盖:每行中的第一个字段被设置为 0,无论数据类型如何......有什么想法吗?

0 投票
2 回答
3758 浏览

sql - 针对 Excel 工作簿运行的 SQL 查询返回截断的文本字段

我正在使用以下代码通过 ADO 连接到 Excel 2007 工作簿运行 SQL SELECT 查询(使用自定义版本的 VBScript)

这是直截了当的。问题是任何文本长度超过 255 个字符的单元格都会被截断;有没有办法解决?连接字符串中是否有支持此功能的属性,还是我需要在 excel 文档本身中更改的选项?我已经尝试过 MSSQL 的 CAST() 函数,但这只会在执行时导致错误。

任何帮助将不胜感激。

0 投票
3 回答
3354 浏览

c++ - 使用 ADO 在 C++ 中执行参数化查询时,为什么我不断收到“必须声明标量变量“@Param1””?

这是代码。
关于它的几点说明。DStr 是我们公司内部的字符串类。它的功能很像 CString。我可以连接到数据库并运行非参数化查询。如果我不使用参数,这个插入也可以正常工作。cmd->Execute 语句会引发异常。这是我从中得到错误消息的地方。

0 投票
2 回答
2346 浏览

delphi - 在应用程序和数据库之间的通信中使用数据压缩?

我有即将到来的项目,我们需要应用程序将压缩数据发送到数据库和其他应用程序。压缩可以使用 GZIP 或 ZLIB 等算法。

有人可以给我一些帮助,特别是对于可以压缩通信应用程序和数据库之间的数据流量的 VCL 组件(或 ActiveX)吗?

只是考虑聊天或 IM 应用程序,但在每个数据流量之间使用压缩。

我的环境:
- Delphi 7 或 BDS 2006
- 将使用 Indy 在应用程序之间进行通信
- 将使用 ADO 将应用程序与数据库进行通信
- TCP/IP 或 HTTP 将用作协议

谢谢,
德尔斯

0 投票
2 回答
1561 浏览

c++ - 如何从 ADO/C++ 调用 MSSQL 系统函数?

...特别是 MSSQL 2005 中的 fn_listextendedproperty 系统函数。

我向我的数据库对象添加了一个扩展属性,名为“schemaVersion”。在我的 MSVC 应用程序中,使用 ADO,我需要确定该扩展属性是否存在,如果存在,则从中返回字符串值。

这是我想要的 T-SQL 代码。我如何用 C++/ADO 编写它,或者以其他方式完成工作?

这是我最初尝试的代码。它失败并出现代码下方列出的错误:

...这是我从 ADO 错误集合中剥离出来的错误。输出来自我的小实用函数,它添加了额外的文本,如线程 ID 等,所以忽略它。

编辑:根据建议更新了通话。还将“SELECT value AS schemaVer”更改为“SELECT value”。

编辑:根据建议将 Execute() 的第一个参数更改为 NULL。这解决了我原来的问题,然后我继续下一个。:)

0 投票
1 回答
5129 浏览

error-handling - 如何获取指示 Recordset.Find 是否找到任何内容的值?

我编写了一个程序,可以添加、删除、保存和搜索数据库(记录集)中的记录。但是我是在一个团队中做的。我的任务是将搜索功能添加到我拥有的程序中;但是,当有人键入不在数据库/记录集中的单词/任何内容时,我在添加错误消息时遇到问题。

因此,例如在文本框(txtFindBox.Text)中,如果他们键入“ashbndash”,它会出现一条错误消息。我已经注释掉了我自己的错误消息框,但请告诉我哪里出错了:(

这是查找按钮的代码。

编辑:就像说问题是每次我点击“查找”按钮时,它都会在 msgbox 中显示“NO RECORD FOUND”消息,即使它找到了答案,如果你输入,它也会出现那个 msgbox在胡言乱语中。

谢谢你的时间

问候哈龙

0 投票
5 回答
31258 浏览

asp.net - Asp.Net 在 Sql 中选择

我知道这将非常简单。我见过很多在 asp.net 中使用 sql 的不同方法,但没有真正的标准。我想知道的是如何从 asp.net 中的 sql 数据库中干净地选择并检索多条记录。例如:选择所有用户标识。