SqlCommand クラス

定義

SQL Server データベースに対して実行する Transact-SQL ステートメントまたはストアド プロシージャを表します。 このクラスは継承できません。

public ref class SqlCommand sealed : System::Data::Common::DbCommand
public ref class SqlCommand sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbCommand
public ref class SqlCommand sealed : System::Data::Common::DbCommand, ICloneable
public sealed class SqlCommand : System.Data.Common.DbCommand
public sealed class SqlCommand : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbCommand
public sealed class SqlCommand : System.Data.Common.DbCommand, ICloneable
type SqlCommand = class
    inherit DbCommand
type SqlCommand = class
    inherit Component
    interface IDbCommand
    interface IDisposable
    interface ICloneable
type SqlCommand = class
    inherit DbCommand
    interface ICloneable
Public NotInheritable Class SqlCommand
Inherits DbCommand
Public NotInheritable Class SqlCommand
Inherits Component
Implements ICloneable, IDbCommand, IDisposable
Public NotInheritable Class SqlCommand
Inherits DbCommand
Implements ICloneable
継承
SqlCommand
継承
継承
実装

次の例では、 、 SqlConnectionSqlCommandおよび を作成します SqlDataReader。 この例では、データを読み取り、コンソールに書き込みます。 最後に、コード ブロックをSqlDataReader終了Usingすると、 と をSqlConnection閉じます。

private static void ReadOrderData(string connectionString)
{
    string queryString =
        "SELECT OrderID, CustomerID FROM dbo.Orders;";
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        SqlCommand command = new SqlCommand(
            queryString, connection);
        connection.Open();
        using(SqlDataReader reader = command.ExecuteReader())
        {
            while (reader.Read())
            {
                Console.WriteLine(String.Format("{0}, {1}",
                    reader[0], reader[1]));
            }
        }
    }
}
Public Sub ReadOrderData(ByVal connectionString As String)
    Dim queryString As String = _
        "SELECT OrderID, CustomerID FROM dbo.Orders;"
    Using connection As New SqlConnection(connectionString)
        Dim command As New SqlCommand(queryString, connection)
        connection.Open()
        Dim reader As SqlDataReader = command.ExecuteReader()
        Try
            While reader.Read()
                Console.WriteLine(String.Format("{0}, {1}", _
                    reader(0), reader(1)))
            End While
        Finally
            ' Always call Close when done reading.
            reader.Close()
        End Try
    End Using
End Sub

次の例では、さまざまな種類の SqlCommand オブジェクトを作成して実行する方法を示します。

まず、次のスクリプトを実行して、サンプル データベースを作成する必要があります。

USE [master]
GO

CREATE DATABASE [MySchool]
GO

USE [MySchool]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE procedure [dbo].[CourseExtInfo] @CourseId int
as
select c.CourseID,c.Title,c.Credits,d.Name as DepartmentName
from Course as c left outer join Department as d on c.DepartmentID=d.DepartmentID
where c.CourseID=@CourseId

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure [dbo].[DepartmentInfo] @DepartmentId int,@CourseCount int output
as
select @CourseCount=Count(c.CourseID)
from course as c
where c.DepartmentID=@DepartmentId

select d.DepartmentID,d.Name,d.Budget,d.StartDate,d.Administrator
from Department as d
where d.DepartmentID=@DepartmentId

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
Create PROCEDURE [dbo].[GetDepartmentsOfSpecifiedYear]
@Year int,@BudgetSum money output
AS
BEGIN
        SELECT @BudgetSum=SUM([Budget])
  FROM [MySchool].[dbo].[Department]
  Where YEAR([StartDate])=@Year

SELECT [DepartmentID]
      ,[Name]
      ,[Budget]
      ,[StartDate]
      ,[Administrator]
  FROM [MySchool].[dbo].[Department]
  Where YEAR([StartDate])=@Year

END
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Course]([CourseID] [nvarchar](10) NOT NULL,
[Year] [smallint] NOT NULL,
[Title] [nvarchar](100) NOT NULL,
[Credits] [int] NOT NULL,
[DepartmentID] [int] NOT NULL,
 CONSTRAINT [PK_Course] PRIMARY KEY CLUSTERED
(
[CourseID] ASC,
[Year] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Department]([DepartmentID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NOT NULL,
[Budget] [money] NOT NULL,
[StartDate] [datetime] NOT NULL,
[Administrator] [int] NULL,
 CONSTRAINT [PK_Department] PRIMARY KEY CLUSTERED
(
[DepartmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Person]([PersonID] [int] IDENTITY(1,1) NOT NULL,
[LastName] [nvarchar](50) NOT NULL,
[FirstName] [nvarchar](50) NOT NULL,
[HireDate] [datetime] NULL,
[EnrollmentDate] [datetime] NULL,
 CONSTRAINT [PK_School.Student] PRIMARY KEY CLUSTERED
(
[PersonID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[StudentGrade]([EnrollmentID] [int] IDENTITY(1,1) NOT NULL,
[CourseID] [nvarchar](10) NOT NULL,
[StudentID] [int] NOT NULL,
[Grade] [decimal](3, 2) NOT NULL,
 CONSTRAINT [PK_StudentGrade] PRIMARY KEY CLUSTERED
(
[EnrollmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create view [dbo].[EnglishCourse]
as
select c.CourseID,c.Title,c.Credits,c.DepartmentID
from Course as c join Department as d on c.DepartmentID=d.DepartmentID
where d.Name=N'English'

GO
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C1045', 2012, N'Calculus', 4, 7)
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C1061', 2012, N'Physics', 4, 1)
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C2021', 2012, N'Composition', 3, 2)
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C2042', 2012, N'Literature', 4, 2)
SET IDENTITY_INSERT [dbo].[Department] ON

INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (1, N'Engineering', 350000.0000, CAST(0x0000999C00000000 AS DateTime), 2)
INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (2, N'English', 120000.0000, CAST(0x0000999C00000000 AS DateTime), 6)
INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (4, N'Economics', 200000.0000, CAST(0x0000999C00000000 AS DateTime), 4)
INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (7, N'Mathematics', 250024.0000, CAST(0x0000999C00000000 AS DateTime), 3)
SET IDENTITY_INSERT [dbo].[Department] OFF
SET IDENTITY_INSERT [dbo].[Person] ON

INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (1, N'Hu', N'Nan', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (2, N'Norman', N'Laura', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (3, N'Olivotto', N'Nino', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (4, N'Anand', N'Arturo', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (5, N'Jai', N'Damien', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (6, N'Holt', N'Roger', CAST(0x000097F100000000 AS DateTime), NULL)
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (7, N'Martin', N'Randall', CAST(0x00008B1A00000000 AS DateTime), NULL)
SET IDENTITY_INSERT [dbo].[Person] OFF
SET IDENTITY_INSERT [dbo].[StudentGrade] ON

INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (1, N'C1045', 1, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (2, N'C1045', 2, CAST(3.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (3, N'C1045', 3, CAST(2.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (4, N'C1045', 4, CAST(4.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (5, N'C1045', 5, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (6, N'C1061', 1, CAST(4.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (7, N'C1061', 3, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (8, N'C1061', 4, CAST(2.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (9, N'C1061', 5, CAST(1.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (10, N'C2021', 1, CAST(2.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (11, N'C2021', 2, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (12, N'C2021', 4, CAST(3.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (13, N'C2021', 5, CAST(3.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (14, N'C2042', 1, CAST(2.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (15, N'C2042', 2, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (16, N'C2042', 3, CAST(4.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (17, N'C2042', 5, CAST(3.00 AS Decimal(3, 2)))
SET IDENTITY_INSERT [dbo].[StudentGrade] OFF
ALTER TABLE [dbo].[Course]  WITH CHECK ADD  CONSTRAINT [FK_Course_Department] FOREIGN KEY([DepartmentID])
REFERENCES [dbo].[Department] ([DepartmentID])
GO
ALTER TABLE [dbo].[Course] CHECK CONSTRAINT [FK_Course_Department]
GO
ALTER TABLE [dbo].[StudentGrade]  WITH CHECK ADD  CONSTRAINT [FK_StudentGrade_Student] FOREIGN KEY([StudentID])
REFERENCES [dbo].[Person] ([PersonID])
GO
ALTER TABLE [dbo].[StudentGrade] CHECK CONSTRAINT [FK_StudentGrade_Student]
GO

次に、次をコンパイルして実行します。

using System;
using System.Data;
using System.Data.SqlClient;
using System.Threading.Tasks;

class Program {

   static class SqlHelper {
      // Set the connection, command, and then execute the command with non query.
      public static Int32 ExecuteNonQuery(String connectionString, String commandText,
          CommandType commandType, params SqlParameter[] parameters) {
         using (SqlConnection conn = new SqlConnection(connectionString)) {
            using (SqlCommand cmd = new SqlCommand(commandText, conn)) {
               // There're three command types: StoredProcedure, Text, TableDirect. The TableDirect
               // type is only for OLE DB.
               cmd.CommandType = commandType;
               cmd.Parameters.AddRange(parameters);

               conn.Open();
               return cmd.ExecuteNonQuery();
            }
         }
      }

      // Set the connection, command, and then execute the command and only return one value.
      public static Object ExecuteScalar(String connectionString, String commandText,
          CommandType commandType, params SqlParameter[] parameters) {
         using (SqlConnection conn = new SqlConnection(connectionString)) {
            using (SqlCommand cmd = new SqlCommand(commandText, conn)) {
               cmd.CommandType = commandType;
               cmd.Parameters.AddRange(parameters);

               conn.Open();
               return cmd.ExecuteScalar();
            }
         }
      }

      // Set the connection, command, and then execute the command with query and return the reader.
      public static SqlDataReader ExecuteReader(String connectionString, String commandText,
          CommandType commandType, params SqlParameter[] parameters) {
         SqlConnection conn = new SqlConnection(connectionString);

         using (SqlCommand cmd = new SqlCommand(commandText, conn)) {
            cmd.CommandType = commandType;
            cmd.Parameters.AddRange(parameters);

            conn.Open();
            // When using CommandBehavior.CloseConnection, the connection will be closed when the
            // IDataReader is closed.
            SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

            return reader;
         }
      }
   }

   static void Main(string[] args) {
      String connectionString = "Data Source=(local);Initial Catalog=MySchool;Integrated Security=True;Asynchronous Processing=true;";

      CountCourses(connectionString, 2012);
      Console.WriteLine();

      Console.WriteLine("Following result is the departments that started from 2007:");
      GetDepartments(connectionString, 2007);
      Console.WriteLine();

      Console.WriteLine("Add the credits when the credits of course is lower than 4.");
      AddCredits(connectionString, 4);
      Console.WriteLine();

      Console.WriteLine("Please press any key to exit...");
      Console.ReadKey();
   }

   static void CountCourses(String connectionString, Int32 year) {
      String commandText = "Select Count([CourseID]) FROM [MySchool].[dbo].[Course] Where Year=@Year";
      SqlParameter parameterYear = new SqlParameter("@Year", SqlDbType.Int);
      parameterYear.Value = year;

      Object oValue = SqlHelper.ExecuteScalar(connectionString, commandText, CommandType.Text, parameterYear);
      Int32 count;
      if (Int32.TryParse(oValue.ToString(), out count))
         Console.WriteLine("There {0} {1} course{2} in {3}.", count > 1 ? "are" : "is", count, count > 1 ? "s" : null, year);
   }

   // Display the Departments that start from the specified year.
   static void GetDepartments(String connectionString, Int32 year) {
      String commandText = "dbo.GetDepartmentsOfSpecifiedYear";

      // Specify the year of StartDate
      SqlParameter parameterYear = new SqlParameter("@Year", SqlDbType.Int);
      parameterYear.Value = year;

      // When the direction of parameter is set as Output, you can get the value after
      // executing the command.
      SqlParameter parameterBudget = new SqlParameter("@BudgetSum", SqlDbType.Money);
      parameterBudget.Direction = ParameterDirection.Output;

      using (SqlDataReader reader = SqlHelper.ExecuteReader(connectionString, commandText,
          CommandType.StoredProcedure, parameterYear, parameterBudget)) {
         Console.WriteLine("{0,-20}{1,-20}{2,-20}{3,-20}", "Name", "Budget", "StartDate",
             "Administrator");
         while (reader.Read()) {
            Console.WriteLine("{0,-20}{1,-20:C}{2,-20:d}{3,-20}", reader["Name"],
                reader["Budget"], reader["StartDate"], reader["Administrator"]);
         }
      }
      Console.WriteLine("{0,-20}{1,-20:C}", "Sum:", parameterBudget.Value);
   }

   // If credits of course is lower than the certain value, the method will add the credits.
   static void AddCredits(String connectionString, Int32 creditsLow) {
      String commandText = "Update [MySchool].[dbo].[Course] Set Credits=Credits+1 Where Credits<@Credits";

      SqlParameter parameterCredits = new SqlParameter("@Credits", creditsLow);

      Int32 rows = SqlHelper.ExecuteNonQuery(connectionString, commandText, CommandType.Text, parameterCredits);

      Console.WriteLine("{0} row{1} {2} updated.", rows, rows > 1 ? "s" : null, rows > 1 ? "are" : "is");
   }
}

注釈

SqlCommand インスタンスが作成されると、読み取り/書き込みプロパティは初期値に設定されます。 これらの値の一覧については、 コンストラクターを SqlCommand 参照してください。

SqlCommandは、SQL Server データベースでコマンドを実行するための次のメソッドを備えています。

Item 説明
BeginExecuteNonQuery この SqlCommandによって記述される Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。通常は、INSERT、DELETE、UPDATE、SET ステートメントなどのコマンドを実行します。 の BeginExecuteNonQuery 各呼び出しは、通常は別のスレッドで操作を完了する呼び出し EndExecuteNonQuery とペアになっている必要があります。
BeginExecuteReader この SqlCommand ステートメントによって記述された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始し、サーバーから 1 つ以上の結果セットを取得します。 の BeginExecuteReader 各呼び出しは、通常は別のスレッドで操作を完了する呼び出し EndExecuteReader とペアになっている必要があります。
BeginExecuteXmlReader この SqlCommand によって定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。 の BeginExecuteXmlReader 各呼び出しは、 の EndExecuteXmlReader呼び出しとペアになっている必要があります。これにより、通常は別のスレッドで操作が完了し、オブジェクトが XmlReader 返されます。
ExecuteReader 行を返すコマンドを実行します。 パフォーマンスを向上させるために、 ExecuteReader Transact-SQL sp_executesql システム ストアド プロシージャを使用してコマンドを呼び出します。 したがって、 ExecuteReader Transact-SQL SET ステートメントなどのコマンドの実行に使用した場合、必要な効果が得られない可能性があります。
ExecuteNonQuery Transact-SQL INSERT、DELETE、UPDATE、SET ステートメントなどのコマンドを実行します。
ExecuteScalar データベースから単一の値 (集計値など) を取得します。
ExecuteXmlReader CommandTextConnection に送信し、XmlReader オブジェクトを構築します。

プロパティを CommandText リセットし、オブジェクトを SqlCommand 再利用できます。 ただし、新しいまたは前のコマンドを SqlDataReader 実行するには、 を閉じる必要があります。

SqlExceptionが を実行するSqlCommandメソッドによって生成された場合、SqlConnection重大度レベルが 19 以下の場合、 は開いたままになります。 重大度レベルが 20 以上の場合、通常、サーバーは を SqlConnection閉じます。 ただし、ユーザーは接続を再び開き、続行できます。

注意

名前のないパラメーター (序数とも呼ばれます) は、.NET Framework Data Provider for SQL Serverではサポートされていません。

コンストラクター

SqlCommand()

SqlCommand クラスの新しいインスタンスを初期化します。

SqlCommand(String)

クエリ テキストを指定して、SqlCommand クラスの新しいインスタンスを初期化します。

SqlCommand(String, SqlConnection)

クエリ テキストと SqlConnection を指定して、SqlCommand クラスの新しいインスタンスを初期化します。

SqlCommand(String, SqlConnection, SqlTransaction)

クエリのテキスト、SqlConnection、および SqlTransaction を指定して、SqlCommand クラスの新しいインスタンスを初期化します。

SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting)

指定されたコマンド テキスト、接続、トランザクション、暗号化の設定で、SqlCommand クラスの新しいインスタンスを初期化します。

プロパティ

CanRaiseEvents

コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。

(継承元 Component)
ColumnEncryptionSetting

このコマンドの列の暗号化の設定を取得または設定します。

CommandText

データ ソースで実行する Transact-SQL ステートメント、テーブル名、またはストアド プロシージャを取得または設定します。

CommandTimeout

コマンド実行の試行を終了してエラーを生成するまでの待機時間 (秒単位) を取得または設定します。

CommandType

CommandText プロパティの解釈方法を示す値を取得または設定します。

Connection

この SqlCommand のインスタンスで使用する SqlConnection を取得または設定します。

Container

IContainer を含む Component を取得します。

(継承元 Component)
DbConnection

この DbConnection により使用される DbCommand を取得または設定します。

(継承元 DbCommand)
DbParameterCollection

DbParameter オブジェクトのコレクションを取得します。

(継承元 DbCommand)
DbTransaction

この DbCommand オブジェクトが実行される DbTransaction を取得または設定します。

(継承元 DbCommand)
DesignMode

Component が現在デザイン モードかどうかを示す値を取得します。

(継承元 Component)
DesignTimeVisible

コマンド オブジェクトを Windows フォーム デザイナー コントロールに表示する必要があるかどうかを示す値を取得または設定します。

Events

Component に結び付けられているイベント ハンドラーのリストを取得します。

(継承元 Component)
Notification

このコマンドにバインドされた SqlNotificationRequest オブジェクトを指定する値を取得または設定します。

NotificationAutoEnlist

共通 SqlDependency オブジェクトからのクエリ通知をアプリケーションで自動的に受信するかどうかを示す値を取得または設定します。

Parameters

SqlParameterCollection を取得します。

Site

ComponentISite を取得または設定します。

(継承元 Component)
Transaction

SqlTransaction が実行される SqlCommand を取得または設定します。

UpdatedRowSource

DbDataAdapterUpdate メソッドで使用するときに、コマンドの結果を DataRow に適用する方法を取得または設定します。

メソッド

BeginExecuteNonQuery()

この SqlCommand によって定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。

BeginExecuteNonQuery(AsyncCallback, Object)

引数に指定されたコールバック プロシージャと状態情報に基づき、この SqlCommand によって定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。

BeginExecuteReader()

この SqlCommand で定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始し、サーバーから 1 つ以上の結果を取得します。

BeginExecuteReader(AsyncCallback, Object)

この SqlCommand によって定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始し、引数に指定されたコールバック プロシージャと状態情報に基づき、サーバーから 1 つまたは複数の結果を取得します。

BeginExecuteReader(AsyncCallback, Object, CommandBehavior)

引数に指定されたコールバック プロシージャと状態情報に基づき、CommandBehavior 値の 1 つを使用し、サーバーから 1 つまたは複数の結果セットを取得して、この SqlCommand によって記述された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。

BeginExecuteReader(CommandBehavior)

CommandBehavior のいずれかの値を使用し、この SqlCommand によって定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。

BeginExecuteXmlReader()

この SqlCommand によって定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始し、結果を XmlReader オブジェクトとして返します。

BeginExecuteXmlReader(AsyncCallback, Object)

この SqlCommand によって定義された Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始し、コールバック プロシージャを使用して結果を XmlReader オブジェクトとして返します。

Cancel()

SqlCommand の実行の取り消しを試行します。

Clone()

現在のインスタンスのコピーである新しい SqlCommand オブジェクトを作成します。

CreateDbParameter()

DbParameter オブジェクトの新しいインスタンスを作成します。

(継承元 DbCommand)
CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。

(継承元 MarshalByRefObject)
CreateParameter()

SqlParameter オブジェクトの新しいインスタンスを作成します。

Dispose()

アンマネージ リソースの解放またはリセットに関連付けられているアプリケーション定義のタスクを実行します。

(継承元 DbCommand)
Dispose()

Component によって使用されているすべてのリソースを解放します。

(継承元 Component)
Dispose(Boolean)

DbCommand によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。

(継承元 DbCommand)
Dispose(Boolean)

Component によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。

(継承元 Component)
DisposeAsync()

コマンド オブジェクトを非同期に破棄します。

(継承元 DbCommand)
EndExecuteNonQuery(IAsyncResult)

Transact-SQL ステートメントの非同期実行を完了します。

EndExecuteReader(IAsyncResult)

Transact-SQL ステートメントの非同期実行を完了し、要求された SqlDataReader を返します。

EndExecuteXmlReader(IAsyncResult)

Transact-SQL ステートメントの非同期実行を完了し、要求されたデータを XML として返します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
ExecuteDbDataReader(CommandBehavior)

接続に対してコマンドを実行し、結果へのアクセスに使用できる を返 DbDataReader します。

(継承元 DbCommand)
ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)

プロバイダーは、ExecuteReader のオーバーロードに既定以外の実装を提供するには、このメソッドを実装する必要があります。

既定の実装は ExecuteReader() 同期メソッドを呼び出し、完了したタスクを返します。呼び出し元のスレッドはブロックされます。 既定の実装は、既に取り消されたキャンセル トークンを渡した場合、取り消されたタスクを返します。 ExecuteReader によってスローされる例外は、返されたタスクの Exception プロパティを介して通信されます。

このメソッドは、早期に操作をキャンセルすることを要求するために使用できるキャンセル トークンを受け取ります。 実装は、この要求を無視する場合があります。

(継承元 DbCommand)
ExecuteNonQuery()

接続に対して Transact-SQL ステートメントを実行し、影響を受けた行数を返します。

ExecuteNonQueryAsync()

非同期バージョンの ExecuteNonQuery()。 の接続オブジェクトに対してコマンドを実行し、影響を受ける行数を返します。

CancellationToken.None を使用して、ExecuteNonQueryAsync(CancellationToken) を呼び出します。

(継承元 DbCommand)
ExecuteNonQueryAsync(CancellationToken)

の非同期バージョン ExecuteNonQuery()。これは、接続に対して Transact-SQL ステートメントを実行し、影響を受ける行数を返します。 キャンセル トークンを使用すると、コマンド タイムアウトが経過する前に操作を破棄するように要求できます。 例外は、返されたタスク オブジェクトによって報告されます。

ExecuteNonQueryAsync(CancellationToken)

これは ExecuteNonQuery() の非同期バージョンです。 プロバイダーは、適切な実装でオーバーライドする必要があります。 オプションで、キャンセル トークンを無視できます。

既定の実装は ExecuteNonQuery() 同期メソッドを呼び出し、完了したタスクを返します。呼び出し元のスレッドはブロックされます。 既定の実装は、既に取り消されたキャンセル トークンを渡した場合、取り消されたタスクを返します。 ExecuteNonQuery() によってスローされる例外は、返されたタスクの Exception プロパティを介して通信されます。

返されたタスクが完了するまで DbCommand オブジェクトの他のメソッドとプロパティを呼び出さないでください。

(継承元 DbCommand)
ExecuteReader()

CommandTextConnection に送信し、SqlDataReader を構築します。

ExecuteReader(CommandBehavior)

CommandTextConnection に送信し、CommandBehavior 値のいずれかを使用して SqlDataReader を構築します。

ExecuteReaderAsync()

CommandTextConnection を送信し SqlDataReader を構築する、ExecuteReader() の非同期バージョン。 例外は、返されたタスク オブジェクトによって報告されます。

ExecuteReaderAsync()

非同期バージョンの ExecuteReader。 の接続に対してコマンドを実行し DbDataReader 、結果へのアクセスに使用できる を返します。

CancellationToken.None を使用して、ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) を呼び出します。

(継承元 DbCommand)
ExecuteReaderAsync(CancellationToken)

CommandTextConnection を送信し SqlDataReader を構築する、ExecuteReader() の非同期バージョン。

キャンセル トークンを使用すると、コマンド タイムアウトが経過する前に操作を破棄するように要求できます。 例外は、返されたタスク オブジェクトによって報告されます。

ExecuteReaderAsync(CancellationToken)

非同期バージョンの ExecuteReader。 の接続に対してコマンドを実行し DbDataReader 、結果へのアクセスに使用できる を返します。

ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) を呼び出します。

(継承元 DbCommand)
ExecuteReaderAsync(CommandBehavior)

CommandTextConnection を送信し SqlDataReader を構築する、ExecuteReader(CommandBehavior) の非同期バージョン。 例外は、返されたタスク オブジェクトによって報告されます。

ExecuteReaderAsync(CommandBehavior)

非同期バージョンの ExecuteReader。 の接続に対してコマンドを実行し DbDataReader 、結果へのアクセスに使用できる を返します。

ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) を呼び出します。

(継承元 DbCommand)
ExecuteReaderAsync(CommandBehavior, CancellationToken)

CommandTextConnection を送信し、SqlDataReader を構築する、ExecuteReader(CommandBehavior) の非同期バージョン。

キャンセル トークンを使用すると、コマンド タイムアウトが経過する前に操作を破棄するように要求できます。 例外は、返されたタスク オブジェクトによって報告されます。

ExecuteReaderAsync(CommandBehavior, CancellationToken)

ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) を呼び出します。

(継承元 DbCommand)
ExecuteScalar()

クエリを実行し、クエリによって返される結果セットの先頭行の最初の列を返します。 その他の列または行は無視されます。

ExecuteScalarAsync()

の非同期バージョン ExecuteScalar()。 コマンドを実行し、最初に返された結果セットの最初の行の最初の列を返します。 その他の列、行、結果セットはすべて無視されます。

CancellationToken.None を使用して、ExecuteScalarAsync(CancellationToken) を呼び出します。

(継承元 DbCommand)
ExecuteScalarAsync(CancellationToken)

クエリを非同期で実行し、クエリで返された結果セットの最初の行の最初の列を返す ExecuteScalar() の非同期バージョン。 その他の列または行は無視されます。

キャンセル トークンを使用すると、コマンド タイムアウトが経過する前に操作を破棄するように要求できます。 例外は、返されたタスク オブジェクトによって報告されます。

ExecuteScalarAsync(CancellationToken)

これは ExecuteScalar() の非同期バージョンです。 プロバイダーは、適切な実装でオーバーライドする必要があります。 オプションで、キャンセル トークンを無視できます。

既定の実装は ExecuteScalar() 同期メソッドを呼び出し、完了したタスクを返します。呼び出し元のスレッドはブロックされます。 既定の実装は、既に取り消されたキャンセル トークンを渡した場合、取り消されたタスクを返します。 ExecuteScalar によってスローされる例外は、返されたタスクの Exception プロパティを介して通信されます。

返されたタスクが完了するまで DbCommand オブジェクトの他のメソッドとプロパティを呼び出さないでください。

(継承元 DbCommand)
ExecuteXmlReader()

CommandTextConnection に送信し、XmlReader オブジェクトを構築します。

ExecuteXmlReaderAsync()

ConnectionCommandText を送信し、XmlReader オブジェクトを構築する ExecuteXmlReader() の非同期バージョン。

例外は、返されたタスク オブジェクトによって報告されます。

ExecuteXmlReaderAsync(CancellationToken)

ConnectionCommandText を送信し、XmlReader オブジェクトを構築する ExecuteXmlReader() の非同期バージョン。

キャンセル トークンを使用すると、コマンド タイムアウトが経過する前に操作を破棄するように要求できます。 例外は、返されたタスク オブジェクトによって報告されます。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLifetimeService()
古い.

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
GetService(Type)

Component またはその Container で提供されるサービスを表すオブジェクトを返します。

(継承元 Component)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
InitializeLifetimeService()
古い.

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。

(継承元 MarshalByRefObject)
Prepare()

SQL Server のインスタンスに対する準備済みのコマンドを作成します。

PrepareAsync(CancellationToken)

準備済み (またはコンパイル済み) バージョンのコマンドをデータ ソース上に非同期に作成します。

(継承元 DbCommand)
ResetCommandTimeout()

CommandTimeout プロパティを既定値にリセットします。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
ToString()

Component の名前 (存在する場合) を格納する String を返します。 このメソッドはオーバーライドできません。

(継承元 Component)

イベント

Disposed

Dispose() メソッドの呼び出しによってコンポーネントが破棄されるときに発生します。

(継承元 Component)
StatementCompleted

Transact-SQL ステートメントの実行が完了すると発生します。

明示的なインターフェイスの実装

ICloneable.Clone()

現在のインスタンスのコピーである新しい SqlCommand オブジェクトを作成します。

IDbCommand.Connection

この IDbCommand のインスタンスで使用する IDbConnection を取得または設定します。

(継承元 DbCommand)
IDbCommand.CreateParameter()

SqlParameter オブジェクトの新しいインスタンスを作成します。

IDbCommand.CreateParameter()

IDbDataParameter オブジェクトの新しいインスタンスを作成します。

(継承元 DbCommand)
IDbCommand.ExecuteReader()

CommandTextConnection に送信し、SqlDataReader を構築します。

IDbCommand.ExecuteReader()

Connection に対して CommandText を実行し、IDataReader をビルドします。

(継承元 DbCommand)
IDbCommand.ExecuteReader(CommandBehavior)

CommandTextConnection に送信し、CommandBehavior 値のいずれかを使用して SqlDataReader を構築します。

IDbCommand.ExecuteReader(CommandBehavior)

Connection に対して CommandText を実行し、CommandBehavior の値のいずれかを使用して IDataReader をビルドします。

(継承元 DbCommand)
IDbCommand.Parameters

IDataParameterCollection を取得します。

(継承元 DbCommand)
IDbCommand.Transaction

この DbCommand オブジェクトが実行される DbTransaction を取得または設定します。

(継承元 DbCommand)

適用対象

こちらもご覧ください