问题标签 [oledbconnection]

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 投票
3 回答
3219 浏览

c# - OleDbCommand.ExecuteReader 抛出异常

我的 C# .NET 3.5 应用程序在执行OleDbCommand.ExecuteReader. 该应用程序对 Access 2007 数据库进行 5 次类似的查询。其中三个查询执行没有任何问题;其他 2 导致完全相同的异常被抛出。

这是一个通过的查询:

这是一个抛出异常的查询:

以下是所有查询的执行方式:

这是一个例外:

System.Data.OleDb.OleDbException:没有为一个或多个必需参数提供值。在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResul t hr) 在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARA MS dbParams, Object& executeResult) 在 System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) 在系统。 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior 行为,字符串方法) 中 System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior 行为) 中的 Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior 行为,对象和 executeResult)。 C 中 XML_Generator.MappingTable.RunQuery(String query, Int32 fieldCount, Object target) 处的 Data.OleDb.OleDbCommand.ExecuteReader():

任何帮助表示赞赏。谢谢。

0 投票
1 回答
3142 浏览

c++ - 无法通过 OLE DB 连接到 Oracle 11g

已解决:我的 VC++ 应用程序是 32 位的,而我的 Oracle DB 是 64 位的。我最初认为客户端可以与两个版本的 Oracle 一起工作,但事实并非如此。因此,我通过重新安装 Oracle 11g2 32 位解决了这个问题。

我正在尝试通过 C++ 中的 Visual Studio 2008 连接到测试 Oracle 11g2 数据库。我的数据库实例名称是 ORCL.TEST.DB,出于测试目的,我尝试使用用户:SYSTEM 和密码:admin 进行连接。我也在使用 Oracle OLE DB 连接器。

如您所见,我并没有尝试任何花哨的东西,我只是在尝试成功连接。

hr 包含的错误代码是 80004005,即 E_FAIL(未指定故障)。

起初我认为这是 32 与 64 的问题(64 位操作系统和 64 位 Oracle,但 Visual Studio 2008 中的 32 位 C++ 编译器)。所以我安装了 Oracle 的 Instant Client 32 位,但它并没有解决我的问题。

有任何想法吗?

0 投票
1 回答
944 浏览

sql-server - 编写 SQL OleDbCommand 以将数据从 SqlServer 导入 Access 数据库

我有以下代码:

我想从数据库中SQL SERVER选择ACCESS

另外,如果密码包含[字符,我该如何转义?

0 投票
2 回答
6562 浏览

c# - 使用 OLEDB 连接选择 Excel 工作表使用范围

有没有办法通过 OLEDB 命令对象选择 Excel 工作表使用范围?

因为我有一个包含 400 行的 Excel 文件,但是当我删除 200 行并尝试再次选择工作表时,它再次选择最多 400 行而不是选择 200 行。这是我为选择工作表而编写的代码:

0 投票
1 回答
1135 浏览

c# - 如何正确初始化 .NET OleDbConnection 对象及其 ConnectionString 属性?

这是我用于连接和使用 Access 数据库的 C# 代码。


但是 line da.Update(ds1,"Customer");, 抛出异常:

ConnectionString 属性尚未初始化。

0 投票
0 回答
1313 浏览

excel - 尝试打开 excel 文件进行插入时 OLEDB 连接崩溃

我正在使用 OLEDB 从一个 excel 文件中读取信息并将其以不同格式输出到另一个文件。虽然在第一个 excel 文件上执行的查询正确返回,但当我尝试对第二个文件执行插入查询时,调用 connection.Open() 时 vshost32.exe 崩溃。在创建 OleDBConnection 的 ServerVersion 时会抛出 InvalidOperationException,我认为这是正常的,因为它会更改为有效的版本号,并且当在连接上调用 Open() 时,状态会从 Closed 更改为 Open。

这是我尝试使用的连接字符串。第一个用于第一个 excel 文件,而以下一个用于写入输出。唯一明显的区别是在第二个字符串中添加了“ReadWrite”模式。我还尝试在扩展属性中将“Excel 8.0”更改为“Excel 12.0”。

0 投票
1 回答
7562 浏览

c# - 我可以使用 OleDbConnection Excel ACE 驱动程序从不可搜索的 System.IO.Stream 而不是文件中读取 Excel 文件吗?

这里有一个类似的问题In Memory OleDbConnection to Excel File但是,通过另一种方式完全避免它来回答这个问题。

下面是一些示例代码,它使用OleDbConnection来从磁盘访问 Excel 文件:

我想从 NON-SEEKABLE 中提取 Excel 文件System.IO.Stream,而不是磁盘上的持久文件。

问题分为两部分,a)我可以将 OleDbConnection 指向 System.IO.Stream 吗?b)如果是这样,那可以是仅向前的流而不是可搜索的流吗?

仅供参考:如果您想运行此代码片段,您需要安装Microsoft Access Database Engine 2010 Redistributable。如果您安装 64 位,则需要将项目定位为 x64,反之亦然。

0 投票
1 回答
856 浏览

c# - 我可以缓存 OleDbConnection 并保持很长时间吗

在静态构造函数中,我检查是否可以打开与所有数据库的连接,然后保留 ConnectionStrings 的静态副本,然后在需要时使用它。

现在,如果我创建

私有静态列表 <OleDbConnection> _connections;

并将所有打开的连接存储为打开的连接?我可以在应用程序打开之前使用这些连接吗?这样做有什么坏处吗?

0 投票
2 回答
3897 浏览

c# - 本地文件的 OleDb 连接字符串

使用 OleDb 我正在连接到 MS Access (v2003) 数据库,我的项目文件夹是MyHotApps,我的 OleDb 连接字符串是

MyConString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\Users\Some User\Documents\Visual Studio 2010\WebSites\MyHotApps\Database\MyDbFile.mdb'";

如上所述,我的项目文件夹是MyHotApps,数据库文件MyDbFile.mdb位于Project_Folder<MyHotApps>\Database\MyDbFile.mdb

因此,对于我来说,数据库文件位于项目文件夹内,它太本地化了,我需要一个便携式连接字符串,无论我在哪里获取项目文件夹,我都不应该重写连接字符串,因为我尝试了以下不起作用的方式

MyConString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source'=~Database\MyDbFile.mdb'";

任何人都可以帮助我如何构建一个便携式连接字符串我读了一些表格说数据库文件应该放在 App_Data 文件中,我也不知道该怎么做。任何人请告诉我以某种方式构建便携式连接字符串。

0 投票
0 回答
552 浏览

c# - 多步 OLE DB 操作产生错误

使用 OleDbConnection 打开 Access 2003 .mdb 文件时出现问题。

客户计算机正在运行 windows xp sp3(刚从 windows xp sp2 升级)。

我检查了这个http://support.microsoft.com/kb/269495/en-us?fr=1# 并且注册表很好。

编码:

例外:

多步 OLE DB 操作产生错误。检查每个 OLE DB 状态值(如果可用)。没有做任何工作。