2

現在、REST(clr / assemblyを介して)とSOAP(sp_OAベースのストアドプロシージャを介して)の優れたソリューションがありますが、XML-RPCはSQLServerT-SQLコードから直接アクセスするための問題です。

この目的のためにどのバリアントが存在するかを教えてください。

すべてのロジックはすでにデータベース内のストアドプロシージャにあり、レコードセットのみを提供する必要があるため、アプリケーション層を回避する必要があります。

4

1 に答える 1

0

xmlhttp COMオブジェクトを使用してt-sql内のHTTP呼び出しからXMLを消費しました。これは、次のようになります。

Declare @Object as Int;

Declare @ResponseText as Varchar(8000);

Exec sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;
Exec sp_OAMethod @Object, 'open', 
NULL, 'get',
'http://www.webservicex.com  /stockquote.asmx?symbol=MSFT',                                                                'false'

Exec sp_OAMethod @Object, 'send'
Exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT

Select @ResponseText

Exec sp_OADestroy @Object

@ResponseTextのxmlは、従来のtsqlメソッドを介して細断処理できます。

これは特に堅牢な方法ではありません。SSISパッケージまたはCLR統合を使用すると、より良いソリューションが得られる可能性が高くなりますが、これはすべてをt-sql内に保持する1つの方法です。

参照: http ://social.msdn.microsoft.com/forums/en-US/transactsql/thread/eac9c027-db71-48ae-872d-381359d7fb51/

于 2012-07-30T03:29:31.720 に答える