次の方法で共有


SQLXML マネージド クラス - SqlXmlCommand オブジェクト

適用対象: SQL Server Azure SQL データベース

これは、SqlXmlCommand オブジェクトのコンストラクターです。

public SqlXmlCommand(string cnString)  

ここでcnStringは、サーバー、データベース、ログイン情報を識別する ADO または OLEDB 接続文字列です (例: Provider=SQLOLEDB; Server=(local); database=AdventureWorks; Integrated Security=SSPI")。

接続文字列では、Provider に SQLOLEDB を指定する必要があります。プロバイダーの文字列に Data Provider は使用できません。

作業サンプルについては、「 SQL クエリの実行 (SQLXML マネージド クラス)」を参照してください。

メソッド

TheSqlXmlCommand オブジェクトは、コマンドを実行するための次のメソッドを含む、いくつかのメソッドをサポートしています。

void ExecuteNonQuery()
コマンドを実行しますが、何も返しません。 このメソッドは、クエリ以外のコマンド (何も返さないコマンド) を実行する場合に便利です。 たとえば、アップデートグラムや DiffGram でレコードを更新し、何も返さない場合に使用できます。

Stream ExecuteStream()
新しい Stream オブジェクトを返します。 このメソッドは、クエリ結果を新しいストリームで返す場合に便利です。 作業サンプルについては、「 SQL クエリの実行 (SQLXML マネージド クラス)」を参照してください。

public void ExecuteToStream(Stream outputStream)
クエリ結果を既存のストリームに書き込みます。 このメソッドは、結果を追加する必要があるストリームがある場合に便利です (たとえば、クエリ結果を System.Web.HttpResponse.OutputStream に書き込む場合など)。 作業サンプルについては、「 SQL クエリの実行 (SQLXML マネージド クラス)」を参照してください。

XmlReader ExecuteXmlReader()
XmlReader オブジェクトを返します。 このメソッドを使用して、XmlReader オブジェクト内のデータを直接操作するか、System.Xml のチェーン可能なアーキテクチャをプラグインすることができます。 詳細については、Microsoft .NET Framework のドキュメントを参照してください。 作業サンプルについては、「 ExecuteXMLReader メソッドを使用した SQL クエリの実行を参照してください。

TheSqlXmlCommand オブジェクトでは、次の追加メソッドもサポートされています。

SqlXmlParameter CreateParameter()
SqlXmlParameter オブジェクトを作成します。 このオブジェクトの Name パラメーターと Value パラメーターの値を設定できます。 このメソッドは、コマンドにパラメーターを渡す場合に便利です。 作業サンプルについては、「 SQL クエリの実行 (SQLXML マネージド クラス)」を参照してください。

void ClearParameters()
指定したコマンド オブジェクトに作成されたパラメーターを消去します。 このメソッドは、同一のコマンド オブジェクトで複数のクエリを実行する場合に便利です。

プロパティ

SqlXmlCommand オブジェクトは、次のプロパティもサポートしています。

ClientSideXml
True に設定すると、サーバーではなくクライアント側で、行セットが XML に変換されます。 このプロパティは、パフォーマンスの負荷を中間層に移す場合に便利です。 このプロパティを使用すると、既存のストアド プロシージャを FOR XML でラップして XML に出力することもできます。

SchemaPath
マッピング スキーマの名前とディレクトリ パス (C:\x\y\MySchema.xml など) を指定します。 このプロパティは、XPath クエリにマッピング スキーマを指定するときに便利です。 パスは、相対パスまたは絶対パスで指定できます。 パスが相対パスの場合、相対パスの解決には、基本パスで指定されたベース パスが使用されます。 基本パスが指定されていない場合、相対パスは現在のディレクトリからのパスになります。 実際のサンプルについては、「 .NET 環境での SQLXML 機能へのアクセスを参照してください。

XslPath
XSL ファイルの名前とディレクトリ パスを指定します。 パスは、相対パスまたは絶対パスで指定できます。 パスが相対パスの場合、相対パスの解決には、基本パスで指定されたベース パスが使用されます。 基本パスが指定されていない場合、相対パスは現在のディレクトリからのパスになります。 作業サンプルについては、「 XSL 変換の適用 (SQLXML マネージド クラス)」を参照してください。

Base Path (基本パス)
基本パス (ディレクトリ パス) を指定します。 このプロパティは、XSL ファイルに指定された相対パス (XslPath プロパティを使用)、マッピング スキーマ ファイル (SchemaPath プロパティを使用)、または XML テンプレートの外部スキーマ参照 ( mapping-schema 属性を使用して指定) を解決する場合に役立ちます。

OutputEncoding
コマンドを実行したときに返されるストリームのエンコードを指定します。 このプロパティは、返されるストリームに特定のエンコードを要求する場合に便利です。 一般的に使用されるエンコードには、UTF-8、ANSI、Unicode などがあります。 既定のエンコードは UTF-8 です。

名前空間
名前空間を使用する XPath クエリの実行を有効にします。 名前空間を使用した XPath クエリの詳細については、「 名前空間を使用した XPath クエリの実行 (SQLXML マネージド クラス)」を参照してください。 作業サンプルについては、「 XPath クエリの実行 (SQLXML マネージド クラス)」を参照してください。

RootTag
コマンドを実行して生成される XML の、単一のルート要素を指定します。 有効な XML ドキュメントには、単一のルートレベルのタグが必要です。 このプロパティでは、コマンドを実行して単一の最上位要素のない XML フラグメントが生成された場合に、返される XML のルート要素を指定できます。 作業サンプルについては、「 XSL 変換の適用 (SQLXML マネージド クラス)」を参照してください。

CommandText
コマンドのテキストを指定します。 このプロパティは、実行するコマンドのテキストを指定するときに使用します。 作業サンプルについては、「 SQL クエリの実行 (SQLXML マネージド クラス)」を参照してください。

CommandStream
コマンド ストリームを指定します。 このプロパティは、XML テンプレートなどのファイルからコマンドを実行する場合に便利です。 CommandStream を使用している場合は、 "Template""UpdateGram""DiffGram"CommandType 値のみがサポートされます。 作業サンプルについては、「 CommandStream プロパティを使用したテンプレート ファイルの実行を参照してください。

CommandType
コマンドの種類を指定します。 このプロパティは、実行するコマンドの種類を指定するときに使用します。 コマンドの種類の値を、次の表に示します。 実際のサンプルについては、「 .NET 環境での SQLXML 機能へのアクセスを参照してください。

説明
SqlXmlCommandType.Sql SQL コマンド ( SELECT * FROM Employees FOR XML AUTO など) を実行します。
SqlXmlCommandType.XPath XPath コマンド (Employees[@EmployeeID=1] など) を実行します。
SqlXmlCommandType.Template XML テンプレートを実行します。
SqlXmlCommandType.TemplateFile 指定したパスにあるテンプレート ファイルを実行します。
SqlXmlCommandType.UpdateGram アップデートグラムを実行します。
SqlXmlCommandType.Diffgram DiffGram を実行します。

参照

SqlXmlParameter オブジェクト (SQLXML マネージ クラス)
SqlXmlAdapter オブジェクト (SQLXML マネージ クラス)