OracleClientFactoryクラス
OracleClientFactoryオブジェクトによって、アプリケーションはODP.NETクラスを一般的な方法でインスタンス化できます。
クラスの継承
System.Object
System.Data.Common.DbProviderFactory
Oracle.DataAccess.Client.OracleClientFactory
宣言
// C# public sealed class OracleClientFactory : DbProviderFactory
要件
| プロバイダ | ODP.NET管理対象外ドライバ | ODP.NET管理対象ドライバ |
|---|---|---|
|
アセンブリ |
|
|
|
ネームスペース |
|
|
|
.NET Framework |
3.5, 4.5, 4.6, 4.7, 4.8 |
4.5, 4.6, 4.7, 4.8 |
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
例
// C#
using System;
using System.Data;
using System.Data.Common;
using Oracle.DataAccess.Client;
class FactorySample
{
static void Main()
{
string constr = "user id=scott;password=tiger;data source=oracle";
DbProviderFactory factory =
DbProviderFactories.GetFactory("Oracle.DataAccess.Client");
DbConnection conn = factory.CreateConnection();
try
{
conn.ConnectionString = constr;
conn.Open();
DbCommand cmd = factory.CreateCommand();
cmd.Connection = conn;
cmd.CommandText = "select * from emp";
DbDataReader reader = cmd.ExecuteReader();
while (reader.Read())
Console.WriteLine(reader["EMPNO"] + " : " + reader["ENAME"]);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine(ex.StackTrace);
}
}
}