c# - 异步使用 ODP.NET

标签 c# .net oracle multithreading odp.net

干草, 我的系统需要使用相同的连接(异步)执行几个主要的 SQL(在 Oracle 数据库上)。

这个问题的最佳做法是什么? 1.打开单连接并在不同线程上执行每个SQL语句(线程安全吗?) 2. 为每个SQL 语句创建新连接并“打开+关闭”

谢谢, 海康

最佳答案

我们一直在多线程上调用 Oracle SQL 语句,这可能是最好的,前提是您的数据库可以处理负载并且无论如何都不会成为瓶颈。但是,我认为您需要在将发出 SQL 命令的线程上创建连接。您可以(而且可能应该)也使用连接池,这样您的连接将被重用,而不是重新建立(Oracle 似乎可以很好地从一个线程到另一个线程重用这些连接)。

关于c# - 异步使用 ODP.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2261338/

相关文章:

C# 为什么 System.IO.File.Exists 不断出错?

.net - 使用 SpreadsheetGear 将电子表格作为电子邮件附件发送

oracle - 在两个Oracle时间戳之间获取秒数

python - 从 bash 脚本调用存储过程,ORA-01756 : quoted string not properly terminated

c# - 如何将子控件的所有事件发送到其父控件(自定义控件)?

c# - 统一重生时重新启动计时器

c# - 在 C# LINQ 中使用 SQL LIKE 运算符

c# - 在 .NET 的集合中剔除 WeakReferences 的最佳时机

c# - 使用 NEST 和 .NET 从 Elasticsearch 返回多个派生类实例

c# - Asp.Net MVC 使用参数执行 Oracle PL/SQL 存储过程