OracleInfoMessageEventArgsクラス
OracleInfoMessageEventArgsクラスは、OracleConnection.InfoMessageイベントのイベント・データを提供します。データベースに警告が発生すると、OracleConnection.InfoMessageイベントが、イベント・データが格納されているOracleInfoMessageEventArgsオブジェクトとともにトリガーされます。
クラスの継承
System.Object
System.EventArgs
Oracle.DataAccess.Client.OracleInfoMessageEventArgs
宣言
// C# public sealed class OracleInfoMessageEventArgs
要件
| プロバイダ | ODP.NET管理対象外ドライバ | ODP.NET管理対象ドライバ | ODP.NET Core |
|---|---|---|---|
|
アセンブリ |
|
|
|
|
ネームスペース |
|
|
|
|
.NET Framework |
4.5, 4.6, 4.7, 4.8 |
4.5, 4.6, 4.7, 4.8 |
4.6.1以降 |
|
.NET Core |
- |
- |
2.1以降 |
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
例
// C#
using System;
using System.Data;
using Oracle.DataAccess.Client;
using Oracle.DataAccess.Types;
class InfoMessageSample
{
public static void WarningHandler(object src,
OracleInfoMessageEventArgs args)
{
Console.WriteLine("Source object is: " + src.GetType().Name);
Console.WriteLine("InfoMessageArgs.Message is " + args.Message);
Console.WriteLine("InfoMessageArgs.Source is " + args.Source);
}
static void Main()
{
OracleConnection con = new OracleConnection("User Id=scott;" +
"Password=tiger;Data Source=oracle;");
con.Open();
OracleCommand cmd = con.CreateCommand();
//Register to the InfoMessageHandler
cmd.Connection.InfoMessage +=
new OracleInfoMessageEventHandler(WarningHandler);
cmd.CommandText =
"create or replace procedure SelectWithNoInto( " +
" empname in VARCHAR2) AS " +
"BEGIN " +
" select * from emp where ename = empname; " +
"END SelectWithNoInto;";
// Execute the statement that produces a warning
cmd.ExecuteNonQuery();
// Clean up
cmd.Dispose();
con.Dispose();
}
}