DB2コマンド・クラス

データ・ソースに対して実行する SQL ステートメントまたはストアード・プロシージャーを表します。

名前空間:
IBM.Data.DB2
アセンブリー:
IBM.Data.DB2 ( IBM.Data.DB2.dll内)

.NET Framework 2.0、3.0、3.5 および 4.0 の継承階層


System.Object
   System.MarshalByRefObject
      System.ComponentModel.Component
         System.Data.Common.DbCommand
            IBM.Data.DB2.DB2Command

.NET Framework 2.0、3.0、3.5 および 4.0 の構文


[Visual Basic]
NotInheritable Public Class DB2Command
   Inherits DbCommand
   Implements ICloneable
[C#]
public sealed class DB2Command : DbCommand, ICloneable
[C++]
public __gc __sealed class DB2Command : public DbCommand,
   ICloneable
[JScript]
public class DB2Command extends DbCommand implements ICloneable

注釈

Db2® V9.7 フィックスパック 5 以降では、 ArrayBindCount プロパティーをリセットするための ArrayBindCountOff 定数が DB2Command クラスに用意されています。

DB2Command クラスは、データベースに対してコマンドを実行するための以下のメソッドを提供します。

アイテム 説明
ExecuteReader 行を戻すコマンドを実行します。
ExecuteResultSet CommandTextConnection に送り、DB2ResultSet を作成します。
ExecuteNonQuery SQL INSERT、DELETE、UPDATE、および SET ステートメントなどのコマンドを実行します。
ExecuteXmlReader CommandTextConnection に送り、XMLReader を作成します。
ExecuteScalar データベースから単一の値 (集約値など) を検索します。

コマンドを実行した結果、致命的な DB2®例外 が発生した場合、 DB2「接続」 が閉じることがあります。 ただし、ユーザーは接続を再オープンして続行することができます。

[Visual Basic、C#] 以下の例では、 DB2CommandExecuteReader メソッドと DB2DataReader および DB2Connection を使用して、表から行を選択します。

[Visual Basic]
Public Sub ReadMyData(myConnString As String)
     Dim mySelectQuery As String = "SELECT SALES, SALES_PERSON FROM SALES"
     Dim myConnection As New DB2Connection(myConnString)
     Dim myCommand As New DB2Command(mySelectQuery, myConnection)
     myConnection.Open()
     Dim myReader As DB2DataReader = myCommand.ExecuteReader()
     Try
         While myReader.Read()
             Console.WriteLine(myReader.GetInt32(0).ToString() + ", " _
                + myReader.GetString(1))
         End While
     Finally
         ' always call Close when done reading.
         myReader.Close()
         ' always call Close when done with connection.
         myConnection.Close()
     End Try
 End Sub
[C#] 
public void ReadMyData(string myConnString)
{
    string mySelectQuery = "SELECT SALES, SALES_PERSON FROM SALES";
    DB2Connection myConnection = new DB2Connection(myConnString);
    DB2Command myCommand = new DB2Command(mySelectQuery,myConnection);
    myConnection.Open();
    DB2DataReader myReader = myCommand.ExecuteReader();
    try
    {
       while (myReader.Read())
       {
          Console.WriteLine(myReader.GetInt32(0) + ", " + myReader.GetString(1));
       }
    }
    finally 
    {
       // always call Close when done reading.
       myReader.Close();
       // always call Close when done with connection.
       myConnection.Close();
    }
}

スレッドの安全性

このタイプの public static (Visual Basic での Shared) メンバーはすべて、 マルチスレッド操作に関して安全です。 どのインスタンス・メンバーも、スレッド・セーフであるとはかぎりません。