次の方法で共有


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 データベースでコマンドを実行するための次のメソッドが用意されています。

品目 説明
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 は、SET ステートメントなどのコマンドを実行するために使用する場合 Transact-SQL 効果がない可能性があります。
ExecuteNonQuery Transact-SQL INSERT、DELETE、UPDATE、SET ステートメントなどのコマンドを実行します。
ExecuteScalar データベースから単一の値 (集計値など) を取得します。
ExecuteXmlReader CommandTextConnectionに送信し、XmlReader オブジェクトをビルドします。

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

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

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

コンストラクター

名前 説明
SqlCommand()

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

SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting)

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

SqlCommand(String, SqlConnection, SqlTransaction)

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

SqlCommand(String, SqlConnection)

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

SqlCommand(String)

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

プロパティ

名前 説明
CanRaiseEvents

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

(継承元 Component)
ColumnEncryptionSetting

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

CommandText

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

CommandTimeout

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

CommandType

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

Connection

SqlCommandのこのインスタンスによって使用されるSqlConnectionを取得または設定します。

Container

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

(継承元 Component)
DbConnection

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

(継承元 DbCommand)
DbParameterCollection

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

(継承元 DbCommand)
DbTransaction

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

(継承元 DbCommand)
DesignMode

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

(継承元 Component)
DesignTimeVisible

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

Events

この Componentにアタッチされているイベント ハンドラーの一覧を取得します。

(継承元 Component)
Notification

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

NotificationAutoEnlist

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

Parameters

SqlParameterCollection を取得します。

Site

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

(継承元 Component)
Transaction

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

UpdatedRowSource

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

メソッド

名前 説明
BeginExecuteNonQuery()

この SqlCommandで記述されている Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。

BeginExecuteNonQuery(AsyncCallback, Object)

コールバック プロシージャと状態情報を指定して、この SqlCommandで記述されている Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始します。

BeginExecuteReader()

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

BeginExecuteReader(AsyncCallback, Object, CommandBehavior)

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

BeginExecuteReader(AsyncCallback, Object)

この SqlCommand で記述されている Transact-SQL ステートメントまたはストアド プロシージャの非同期実行を開始し、コールバック プロシージャと状態情報を指定して、サーバーから 1 つ以上の結果セットを取得します。

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)
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 によってスローされた例外は、返されたタスク例外プロパティを介して伝達されます。

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

(継承元 DbCommand)
ExecuteNonQuery()

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

ExecuteNonQueryAsync()

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

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

(継承元 DbCommand)
ExecuteNonQueryAsync(CancellationToken)

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

ExecuteReader()

CommandTextConnectionに送信し、SqlDataReaderをビルドします。

ExecuteReader(CommandBehavior)

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

ExecuteReaderAsync()

ExecuteReader()の非同期バージョン。CommandTextConnectionに送信し、SqlDataReaderをビルドします。 例外は、返された Task オブジェクトを介して報告されます。

ExecuteReaderAsync(CancellationToken)

ExecuteReader()の非同期バージョン。CommandTextConnectionに送信し、SqlDataReaderをビルドします。

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

ExecuteReaderAsync(CommandBehavior, CancellationToken)

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

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

ExecuteReaderAsync(CommandBehavior)

CommandTextConnectionに送信し、SqlDataReaderをビルドする、ExecuteReader(CommandBehavior)の非同期バージョン。 例外は、返された Task オブジェクトを介して報告されます。

ExecuteScalar()

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

ExecuteScalarAsync()

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

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

(継承元 DbCommand)
ExecuteScalarAsync(CancellationToken)

クエリを非同期的に実行し、クエリによって返される結果セットの最初の行の最初の列を返す、 ExecuteScalar()の非同期バージョン。 追加の列または行は無視されます。

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

ExecuteXmlReader()

CommandTextConnectionに送信し、XmlReader オブジェクトをビルドします。

ExecuteXmlReaderAsync()

ExecuteXmlReader()の非同期バージョン。CommandTextConnectionに送信し、XmlReader オブジェクトをビルドします。

例外は、返された Task オブジェクトを介して報告されます。

ExecuteXmlReaderAsync(CancellationToken)

ExecuteXmlReader()の非同期バージョン。CommandTextConnectionに送信し、XmlReader オブジェクトをビルドします。

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

GetHashCode()

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

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

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

(継承元 MarshalByRefObject)
GetService(Type)

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

(継承元 Component)
GetType()

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

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

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

(継承元 MarshalByRefObject)
MemberwiseClone()

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

(継承元 Object)
MemberwiseClone(Boolean)

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

(継承元 MarshalByRefObject)
Prepare()

SQL Server のインスタンスに準備されたバージョンのコマンドを作成します。

ResetCommandTimeout()

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

ToString()

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

(継承元 Object)
ToString()

Stringの名前 (存在する場合) を含むComponentを返します。 このメソッドはオーバーライドしないでください。

(継承元 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)

適用対象

こちらもご覧ください