これは、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 マネージド クラス)」を参照してください。
ベース パス
ベース パス (ディレクトリ パス)。 このプロパティは、XSL ファイルに指定された相対パス (XslPath プロパティを使用)、マッピング スキーマ ファイル (SchemaPath プロパティを使用)、または XML テンプレートの外部スキーマ参照 ( mapping-schema
属性を使用して指定) を解決する場合に役立ちます。
OutputEncoding
コマンドの実行時に返されるストリームのエンコードを指定します。 このプロパティは、返されるストリームの特定のエンコードを要求する場合に便利です。 一般的に使用されるエンコーディングには、UTF-8、ANSI、Unicode などがあります。 UTF-8 が既定のエンコードです。
名前空間
名前空間を使用する XPath クエリの実行を有効にします。 名前空間を使用した XPath クエリの詳細については、「名前空間 を使用した XPath クエリの実行 (SQLXML マネージド クラス)」を参照してください。 作業サンプルについては、「 XPath クエリの実行 (SQLXML マネージド クラス)」を参照してください。
RootTag
コマンドの実行によって生成される XML の単一ルート要素を提供します。 有効な XML ドキュメントには、ルート レベルのタグが 1 つ必要です。 実行されたコマンドで XML フラグメントが生成される場合 (最上位レベルの要素が 1 つも含まない)、返される XML のルート要素を指定できます。 作業サンプルについては、「 XSL 変換の適用 (SQLXML マネージド クラス)」を参照してください。
CommandText
コマンドのテキストを指定します。 このプロパティは、実行するコマンドのテキストを指定するために使用されます。 作業サンプルについては、「 SQL クエリの実行 (SQLXML マネージド クラス)」を参照してください。
CommandStream
コマンド ストリーム。 このプロパティは、ファイル (XML テンプレートなど) からコマンドを実行する場合に便利です。 CommandStream を使用している場合は、 "Template"、 "UpdateGram" 、" DiffGram"CommandType の値のみがサポートされます。 作業サンプルについては、「 CommandStream プロパティを使用したテンプレート ファイルの実行」を参照してください。
コマンドタイプ
コマンドの種類を識別します。 このプロパティは、実行するコマンドの種類を指定するために使用されます。 次の表の値によって、コマンドの種類が決まります。 実際のサンプルについては、「 .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 マネージド クラス)