次の方法で共有


ネイティブ XML Web サービス (SQL Server 2008 では非推奨)

この機能は、将来のバージョンの Microsoft SQL Server では削除される予定です。 新しい開発作業では、この機能の使用を避け、現在この機能を使用しているアプリケーションは修正するようにしてください。

SQL Server 2008 では、ネイティブ XML Web サービス (SOAP/HTTP エンドポイント) の使用は推奨されません。ネイティブ XML Web サービスは、SQL Server の将来のバージョンで削除される予定です。既存の SOAP/HTTP エンドポイントを変換して Windows Communications Foundation (WCF) または ASP.NET を使用する予定です。新しい開発作業では、SOAP/HTTP エンドポイントを使用しないでください。

SOAP エンドポイントの使用例の確認

アプリケーションでの SOAP エンドポイントの使用例を次に示します。

  • アップグレード アドバイザを実行する場合

  • SQL Server のバージョンを SQL Server 2008 にアップグレードする場合

  • SQL Server Profiler でアプリケーションを実行し、Deprecation: Warning イベントが表示されるようにプロファイラの出力にフィルタ処理をする場合

  • SOAP エンドポイントの作成または変更時に SQL Server エンジンで警告を発行する場合

  • SQL Server の起動時に有効になっている、非推奨の SOAP エンドポイントに対する警告が SQL Server エラー ログに含まれる場合

  • ストアド プロシージャで実行された SOAP エンドポイントで、SQL Server 2005 以降に導入されたデータ型を使用するときにアプリケーション エラーが発生した場合

SQL Server 2005 の後に追加されたデータ型に対するネイティブ XML Web サービスのサポート

ここでは、SQL Server 2008 以降に追加されたデータ型と、(Web サービスとして公開されている) ストアド プロシージャのパラメータおよび SqlBatch のパラメータ (アドホック Transact-SQL クエリ) として表示されるデータ型の処理について説明します。

機能

処理

WSDL の生成

WSDL の生成処理中、ストアド プロシージャは、パラメータのデータ型およびセキュリティ権限に対して評価されます。ストアド プロシージャのパラメータの 1 つが SQL Server 2008 のデータ型の場合、ストアド プロシージャは、最後に生成された WSDL ドキュメントに XML コメントの形式 (<!-- text-->) でコメント アウトされます。

ストアド プロシージャ パラメータの処理

SQL Server 2005 の SOAP エンドポイントと同様、各エンドポイントでは、エンドポイントの作成時にエンドポイントにマップされたストアド プロシージャの検証が行われません。その結果、ストアド プロシージャは SOAP 要求を受け取った際の実行時にのみ検証されます。この検証処理を使用した場合、SOAP 要求を受け取ると、SQL Server では、要求がストアド プロシージャに対する要求かどうかを確認し、ストアド プロシージャ パラメータのメタデータを調べてパラメータのいずれかが不明であるかどうかを確認します (たとえば、SQL Server 2008 のデータ型)。パラメータのいずれが不明な場合は、サーバーからクライアントに SOAP エラーが返され、追加処理は実行されません。

結果セットの処理

SELECT ステートメントの結果セットに、SQL Server 2008 以降に追加されたデータ型の列が 1 つ以上含まれている場合、SOAP コンポーネントは次のような処理を行います。

  • データがネットワークに書き込まれていない場合は、"xxx" がサポートされていないデータ型であることを示す SOAP エラーが返されます。

  • ネットワークにデータが書き込まれた場合は、接続を終了します。

SqlBatch のパラメータ処理

特殊な SqlBatch メソッドでは、xsd 名前空間に加え sqltypes 名前空間のパラメータのデータ型の宣言がサポートされています。sqltypes 名前空間では、SQL Server 2008 以降に追加されたデータ型がサポートされていません。SQL Server 2005 の xsd から sqltypes へのデータ型マッピングは有効なままです。xsd:dateTime は、dateTimeOffset ではなく dateTime に引き続きマップされます。

非推奨の sys.soap_endpoints および sys.endpoint_webmethods

次のカタログ ビューも推奨されていません。

関連項目

その他の技術情報