Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle通过ADO.NET(C#)-Can';不要使用ODP_C#_Oracle_Ado.net - Fatal编程技术网

Oracle通过ADO.NET(C#)-Can';不要使用ODP

Oracle通过ADO.NET(C#)-Can';不要使用ODP,c#,oracle,ado.net,C#,Oracle,Ado.net,为了快速完成oracle批量插入,我目前在大约110秒内完成了4000行…太糟糕了!我确实将插入绑定到事务,并且仅在事务完成后提交。我正在将参数绑定到OracleCommand以进行输入 我使用ADO.NET通过OCI进行C#解析。ODP.NET确实不是一个选项,因为我不能牺牲可移植性。我想分发应用程序和一些DLL。不是oracle客户端安装 有没有关于如何加快速度的想法?我的建议是使用ODP.net。这将是让它运行得更平稳的最佳方式 要解决安装客户端的问题。它比完整的Oracle客户端安装要紧

为了快速完成oracle批量插入,我目前在大约110秒内完成了4000行…太糟糕了!我确实将插入绑定到事务,并且仅在事务完成后提交。我正在将参数绑定到OracleCommand以进行输入

我使用ADO.NET通过OCI进行C#解析。ODP.NET确实不是一个选项,因为我不能牺牲可移植性。我想分发应用程序和一些DLL。不是oracle客户端安装


有没有关于如何加快速度的想法?

我的建议是使用ODP.net。这将是让它运行得更平稳的最佳方式


要解决安装客户端的问题。它比完整的Oracle客户端安装要紧凑得多,并且不需要任何类型的安装。

请注意,
System.Data.OracleClient
根据


如果一个商业库是一个选项(至少2个DLL),请看一看-它有一个“直接模式”,无需任何客户端安装即可工作,并且如果存在,它可以使用OCI…

我不确定您所说的“ADO.NET与C#通过OCI解析”的确切含义是什么?请显示一些源代码…ADO.NET是microsoft的oracle驱动器(System.Data.OracleClient)。OCI是Oracle调用接口-基本上只是用于Oracle安装的DLL。谢谢-我知道ADO.NET和OCI是什么,我不理解“解析通过”部分…从技术上讲,ADO.NET是一个供应商中立的数据接口库。System.Data.OracleClient是Microsoft折旧后的Oracle客户端。他们不再支持它,也不希望人们在新项目中使用它。另外,我不知道在没有安装Oracle客户端的情况下如何使用OCI,因为OCI是一个Oracle客户端接口。OCI=Oracle调用接口不是吗?那篇文章的“局限性”让我担心。它看起来真的不那么便携。我希望能够只分发我的.EXE和几个DLL。还是我误解了这篇文章?这些限制就像其他程序不能使用附带的DLL一样,因为它们不在GAC中,并且没有设置必要的注册表项。对于你的单个应用程序来说,这并不重要,因为你包括了它们。您还必须使用ezconnect连接字符串,而不是TNS,但无论如何,您不能在Microsoft客户端上使用TNS。在你的特殊情况下,我看不到任何会影响你的东西。好的,蒂尔德斯,谢谢。我现在正在试。得到错误:“Oracle.DataAccess.dll中发生了类型为'Oracle.DataAccess.Client.OracleException'的第一次意外异常”我正在尝试捕获OracleException,但得到了一个空异常。解决此问题的最佳方法是通读线程的其余部分,并查看具有相同问题的其他人做了什么,如果需要的话,问问那里。在ODP.net论坛上有更多的人有这样做的经验。