ネイティブ XML Web サービス (SQL Server 2008 では非推奨)
この機能は、将来のバージョンの Microsoft SQL Server では削除される予定です。新しい開発作業では、この機能の使用を避け、現在この機能を使用しているアプリケーションは修正するようにしてください。
ネイティブ 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 サービスのサポート
ここでは、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 コンポーネントでは次のように処理されます。
|
SqlBatch のパラメーター処理 |
特殊な SqlBatch メソッドでは、xsd 名前空間に加え sqltypes 名前空間のパラメーターのデータ型の宣言がサポートされています。sqltypes 名前空間では、SQL Server 2008 に追加されたデータ型がサポートされていません。SQL Server 2005 の xsd から sqltypes へのデータ型マッピングは有効なままです。xsd:dateTime は、dateTimeOffset ではなく dateTime に引き続きマップされます。 |
非推奨の sys.soap_endpoints および sys.endpoint_webmethods
次のカタログ ビューも推奨されていません。