Tag: odp.net

无法加载DLL“OraOps10.dll”

我遇到了一个特殊的问题。 我正在开发一个基于Windows的应用程序,它连接到Oracle数据库。 对于初始测试,我已经创建了安装程序并在我拥有的不同机器上进行了测试。 每台机器都安装了Oracle客户端,我没有看到运行应用程序时出现任何问题。 但是当我与客户共享此安装程序时,他收到错误“无法加载DLL OraOps10.dll”。 当被问及他提到并在他的机器上安装了Oracle客户端时,他能够运行连接到Oracle数据库的其他C#应用程序。 我不明白为什么我的应用程序只会出错。 我甚至尝试过在https://forums.oracle.com/forums/thread.jspa?threadID=67364上分享的建议,但仍然没有运气。 我甚至尝试在客户的机器上手动复制可执行文件和DLL。 但仍面临同样的问题。 所以请帮助我,我还能做些什么。 谢谢和最诚挚的问候 Sudhakar Chavali PS: 我使用的是Windows XP操作系统,客户也使用相同的操作系统。 两台机器都只是32位操作系统。 这是客户安装oracle客户端的位置:C:\ oracle \ product \ 10.2.0 \ client_1 \ bin,同样也是我的版本。 我们都在使用Oracle 10g。

启用ODP.Net日志记录

任何人都可以帮我在Windows XP机器上启用ODP.Net日志记录吗? 我用Google搜索并发现以下链接,但它对我不起作用。 http://download.oracle.com/docs/html/E10927_01/featConfig.htm 我在注册表中将“TraceLevel”设置为“63”但它没有帮助 基本上我想通过日志捕获从我的C#代码发生的所有数据库调用。 我希望Oracle有一个像“SQL Profiler”这样的工具。

将System.Data.OracleClient替换为Oracle.DataAccess(ODP.NET)

我有一个目前正在使用System.Data.OracleClient的项目,因为它已被弃用,所以我想切换到Oracle 11g的ODP.NET最新版本。 如果以下步骤对我有用,或者在没有任何错误的情况下需要执行某些其他操作,请告知我们: 删除对SYstem.Data.OracleClient的引用 添加对Oracle.DataAccess dll的引用 用OracleDbType替换OracleType枚举,并将对VarChar的数据类型的引用更新为Varchar2等。

使用ODP.NET进行Oracle批量更新

看一下这个例子来做批量插入,我假设使用相同的逻辑可以用于更新。 我尝试了以下内容,看看它是否可行,但它没有: string sql = “update TEST set NAME=:newName where NAME=:name”; connection.Open(); OracleCommand command = connection.CreateCommand(); command.CommandText = sql; command.CommandType = System.Data.CommandType.Text; command.BindByName = true; command.ArrayBindCount = 5; string[] originalName = { “Test1”, “Test2”, “Test3”, “Test4”, “Test5” }; string[] newName = { “New Test1”, “New Test2”, “New Test3”, “New Test4”, “New Test5” }; command.Parameters.Add(“:newName”, OracleDbType.Varchar2, […]

无法在C#中解析Oracle时间戳

我有Oracle的时间戳: string timestamp = “23-JUN-14 09.39.04.000000000 AM”; 我无法将其解析为系统日期时间对象。 我用了: CultureInfo provider = CultureInfo.InvariantCulture; String format = “yy-MMM-dd hh:mm:ss:fffffff”; string timestamp = “10-DEC-07 10.32.47.797201123 AM”; { var date = DateTime.ParseExact(timestamp, format, provider); DateTime dateTime = DateTime.ParseExact(timestamp.ToString(), “dd-MMM-y HH:mm:ss”, CultureInfo.InvariantCulture); } 它仍然传递错误。 它在m后工作7 f但不超过。 我用过Parse尝试ParseExact – 有什么办法吗?

ODP.NET如何将字符串数组传递给Oracle存储过程?

关于这个问题有很多问题和令人困惑的 文档 ,但到目前为止还没有运气。 我有以下PL / SQL存储过程; PROCEDURE PS_test( Liste1 Listcar, Liste2 Listcar, P_CURS_MESSAGE out CURSOR_REF_TYP ) Listcar类型如下: TYPE Listcar IS VARRAY(100)OF VARCHAR2(50); 这是我到目前为止所尝试的: string[] list = { “name1”, “name1” }; OracleParameter oParam = (OracleParameter)myOracleCommand.CreateParameter(); oParam.ParameterName = “Liste1”; oParam.UdtTypeName = “LISTCAR”; oParam.Value = list; oParam.Direction = ParameterDirection.Input; myOracleCommand.Parameters.Add(oParam); 在值赋值上出现以下错误: Value does not fall within the expected […]

使用ODP.Net的问题

我已成功使用Oracle Database 11g第2版(11.2.0.1.0)从.Net连接oracle。 (参考Oracle.DataAccess.dll版本为2.112.1.0)。 但是当我安装ODP.NET并且当我尝试连接到oracle时,它给了我一个错误:“ORA-12154:TNS:无法解析指定的连接标识符”。 我怎么解决这个问题? 谢谢!

如何在C#中使用Oracle ODP.Net执行更新语句

我正在使用Oracle.DataAccess.Client在我的ASP.Net应用程序中使用Oracle数据库。 在MSDN中没有针对ODP.Net的帮助文档, Oracle的文档真的非常糟糕。 我无法找到这个简单问题的答案。 是否无法在不构建dataset对象和更新dataset情况下执行简单的更新语句? 如何在C#中使用Oracle ODP.Net执行更新语句?

ODP.NET Oracle.ManagedDataAcess随机ORA-12570错误

我正在尝试从非托管版本迁移到Oracle.ManagedDataAcess并接收randoms ORA-12570 TNS:数据包读取器故障。 我不知道为什么会出现这个错误,但是一旦它开始,每个后续请求都会给出相同的错误大约10-30分钟,然后它会再次运行10-30分钟,依此类推。 因此,随后的失败随机一段时间后随后成功 已经尝试过很多东西,要恢复: 环境: Oracle.ManagedDataAcess版本12.1.2400(4.121.2.20150926)(nuget)(服务器上没有安装可以覆盖bin版本的gac引用) Oracle Server Oracle Database 12c企业版12.1.0.2.0版 – 64位生产 Windows 2012(Windows Update确定) 经过: 防火墙:这不是防火墙问题 计算机错误:我的计算机,Azure WebApp和AWS EC2实例上也出现同样的问题 干扰:没有嗅探器运行,透明代理等。 加密:我不使用任何类型的加密(除非默认情况下启用了一些我不知道的事情) 连接字符串:相同的连接字符串与非托管版本完美配合 附加信息: 这是一个生产数据库,它非常稳定 应用程序编译为anycpu,IIS应用程序池限制为64位 我每次测试完全相同的请求(只是刷新其余的ws,webapi),所以它与数据格式无关 组态: 服务器sqlnet.ora SQLNET.AUTHENTICATION_SERVICES =(NTS) NAMES.DIRECTORY_PATH =(TNSNAMES,EZCONNECT) 应用程序Web.config <!—-> 一些参考: https://community.oracle.com/thread/3634263?start=0&tstart=0 ODP.net托管驱动程序抛出ORA-12570:网络会话:意外的数据包读取错误 使用Oracle Advanced Security Options管理Oracle客户端 IIS中的ODP.NET错误:ORA-12357网络会话文件结束 更新1 池改变后(我在这里描述的答案),我决定发布一个版本来做一些真正的测试。 1天后用户抱怨性能我得到了另一个错误:值不能为空。 参数名称:byteArray 我将引用更改回非托管版本,一切都很好,更快,没有bytearray错误,更好的池管理。 所以我现在只是放弃托管版本,也许我会在下一版本的Oracle上再试一次。 这里有一些关于这个新错误的引用,你可以看到,看起来像另一个错误(仍然没有任何答案)。 https://community.oracle.com/thread/3676588?start=0&tstart=0 EF […]

Oracle ODP.Net和EF CodeFirst – SaveChanges错误

有人可以帮我这个: 代码: Role r = new Role { ID = 1, Name = “Members” }; ctx.Roles.Attach(r); //Saving User User u = new User { Login = login, Password = password, Status = 1 }; u.Roles.Add(r); ctx.Users.Add(u); ctx.SaveChanges(); 我要做的是保存具有现有角色的新用户。 用户和角色类具有由fluent-api映射的多对多关系,如下所示: modelBuilder.Entity() .HasMany(u => u.Roles) .WithMany(r => r.Users) .Map(x => { x.ToTable(“USER_ROLE_XREF”, dbsch); x.MapLeftKey(“ID_USER”); x.MapRightKey(“ID_ROLE”); }); 但是当调用SaveChanges时,我收到此错误: […]