odp.net相关内容
我的应用程序有性能问题,所以我开始从根本上调查这个问题:“与数据库的连接". 最佳实践说:“打开连接,使用它并尽快关闭",但我不知道这会导致开销,所以问题是: 1 -“尽快打开、使用、关闭连接是使用 ODP.NET 的最佳方法吗?" 2 - 有没有办法以及如何在 ODP.NET 中使用连接池?我正在考虑创建一个列表来存储一些连接字符串并创建一个逻辑以在每次需要时选择“最佳"连接.
..
当我调用这段代码时: 使用 (var connection = new SqlConnection(connectionString)){var command = new SqlCommand("SELECT * FROM Table", connection);连接.打开();使用 (var reader = command.ExecuteReader()){而(读者.读()){//在这里做
..
另请参阅 System.Data.OracleClient 命名空间已停用? (首先不要惊慌,System.Data.OracleClient 还没有被微软删除,但它不在 .net 4 的客户端版本中) 通过使用 System.Data.OracleClient,可以实现此用途,然而微软决定弃用 OracleClient.(OracleClient 是 Microsoft 为 Orac
..
我目前正在使用适用于 Oracle 的 Microsoft ADO.NET 提供程序 (System.Data.OracleClient).我知道它肯定不是最好的 Oracle 提供程序,它 很快就会被弃用,我应该改用 Oracle 的 ODP.NET.我仍然使用 MS 提供程序的原因是因为 ODP.NET 按位置绑定参数,而不是按名称.当您在查询中使用许多参数时,这确实是一个 PITA,因为您必
..
我目前使用 Oracle 托管驱动程序 (v12.1.2400) 作为我的实体框架驱动程序,并且目前在执行期间看到 ORA-12704: character set mismatch 错误. 我使用的LINQ->SQL代码如下: 来自 CUSTOMER.AsNoTracking() 中的 c其中 c.ACCOUNT.Contains("DE")&&c.DELETED == "N"order
..
我们的项目最近更新到较新的 Oracle.ManagedDataAccess DLL (v 4.121.2.0),并且此错误一直在间歇性地出现.我们已经修复了几次,但并不真正知道我们做了什么来修复它. 我相当肯定这是由于 CLOB 字段被映射到实体框架中的字符串,然后在 LINQ 语句中被选中,从而拉动整个实体,而不仅仅是一组有限的属性. 错误: 值不能为空.参数名称:字节数组 堆
..
我正在尝试为我们在 .net 中使用 Oracle 的应用程序套件编写数据访问库.我们目前使用 NHibernate,并且正在考虑迁移,因为它似乎没有得到很好的支持. 我正在使用 Visual Studio 2013,我们已经构建了我们的 Oracle 数据库.我们没有写来更新它(那是 db 家伙的领域).因此,这不会成为我们任何计算的一部分. 服务器上的客户端是 32 位的,所以我们
..
我使用的是 Visual Studio 2008 Express Edition,并且正在尝试使用 Oracle.DataClient 开发一个小型应用程序.尝试连接到目标系统中的数据库时,出现上述错误. 我为 Oracle 10gR2 添加了对 Oracle ODP.net 提供程序的引用,并且在目标机器中我安装了 Oracle 10gR2 数据库的副本.尽管如此,我还是收到了错误消息.在
..
我使用 NHibernate 和 ODP.NET 连接到 Oracle 11g 数据库.当然,可能存在连接错误(网络故障、DB 宕机……).我在我的代码中处理所有这些异常,所以没问题.但是当然用户可以重试他的操作(也许只是短暂的网络故障),这就是我的问题: ODP.NET 默认使用连接池.通常没有问题,但是当用户在连接错误后重试操作时,NHibernate 会从 ODP.NET 获取无效(池
..
我正在尝试为我们在 .net 中使用 Oracle 的应用程序套件编写数据访问库.我们目前使用 NHibernate,并且正在考虑迁移,因为它似乎没有得到很好的支持. 我正在使用 Visual Studio 2013,我们已经构建了我们的 Oracle 数据库.我们没有写入来更新它(这是数据库人员的域).所以这不会成为我们最终计算的一部分. 服务器上的客户端是 32 位的,所以我们现在
..
我最近使用 Visual Studio 2013(可能是 32 位,至少它自己安装在 Program Files (x86) 上)设置了 Windows 8.1 64 位机器.我还安装了带有 Oracle Data Provider for .NET 的 Oracle 11.2.0.1 64 位客户端. 当我做 gacutil/l |findstr Oracle.DataAccess,我得到
..
我有一个项目目前正在使用 System.Data.OracleClient,由于它已被弃用,所以我想切换到 Oracle 11g 的 ODP.NET 最新版本.请让我知道以下步骤是否适用于我,或者需要采取某些其他措施才能使其正常工作而不会出现任何错误: 删除对 SYStem.Data.OracleClient 的引用 添加对 Oracle.DataAccess dll 的引用 用 Ora
..
我正在尝试使用 Visual Studio 2010 中的服务器资源管理器连接我的本地 Oracle 11g 数据库.我尝试按照说明设置所有内容,但我仍然收到 ORA-12504 错误. 这里是错误: 这是我的 tnsnames.ora 内容: # tnsnames.ora 网络配置文件:C:\app\rsahi\product\11.2.0\dbhome_1\network\adm
..
是否可以在 pl/sql 存储过程中将 OracleParameter 正确传递给布尔参数? 解决方案 您不能在 SQL 中使用布尔参数.所以调用一个接受或返回一个布尔值的存储过程在 SQL 中不起作用.在 pl/sql 块中使用这样的过程没有问题. 从 JCallico 回答中添加: 我使用以下解决方法绕过此限制: 使用匿名块包装函数调用. 返回一个包含 1 或 0
..
我正在创建一个使用 odp.net 的 .NET 程序,特别是 11g 版本.我们的 oracle 服务器运行的是 10g.我在开发过程中为时已晚,无法进行更改.我会遇到麻烦吗?您有在 10g 服务器上运行 11g 客户端的经验吗? 解决方案 您可以将 odp.net 11 与 Oracle 服务器 9、10 和 11 一起使用.是的,我已经尝试了所有这些组合. 例如,您可以使用 o
..
概述 我想用 Orcale 替换 Oracle.DataAccess.托管DataAccess,但打开与后者的连接会引发ORA-12537 网络会话文件结束异常. 异常消息/堆栈跟踪 {OracleInternal.Network.NetworkException (0x000030F9): ORA-12537: Netzwerksession: Dateiende在 Oracl
..
首先,我想使用Oracle.DataAccess.dll来使用OracleBulkCopy. 我想知道我需要能够从数据库读取然后在 Oracle 中执行批量复制的所有 dll.目前,我们只使用一个 dll 来执行从数据库的所有读取,我们使用 Oracle.ManagedDataAccess.Client.但我不能用它来执行批量复制. 我不想为用户安装ODP.NET,我想直接在程序中包含
..
我参考 Oracle.DataAccess.dll 使用 OracleBulkCopy 类.我想使用 Oracle.ManagedDataAccess.dll 进行轻松部署.但是后来我收到了构建错误“未找到 OracleBulkCopy" 有谁知道为什么 OracleBulkCopy 不包含在 Oracle.ManagedDataAccess.dll 中? 解决方案 你说得对.在撰写
..
我正在将现有应用程序从 SQL Server 转换为 Oracle,但遇到了障碍.我正在尝试将匿名块作为动态 SQL 执行并返回结果集.但是,我尝试过的任何内容似乎都无法返回任何值.由于设计限制,存储过程已过时. 我的查询定义为: DECLARE type id_array IS TABLE OF number;t_Ids id_array;开始更新 CSM_RECORDS SET MIG
..
我需要帮助了解我是否尝试使用 Ref Cursor 作为多个记录/值的返回值参数的方式,PL/SQL 只是 OracleCommand 对象的 CommandText 而不是存储过程或函数, 甚至是可能的. 如果这是不可能的,我想要做的是找到一种方法来发出 PL/SQL 语句,该语句将更新未知数量的记录(取决于与 WHERE 子句匹配的记录数),并返回 Id在 OracleDataReade
..