Azure SQL Databaseで他のDBにクエリを投げる

ビッグデータと分析

MS開発部の 永田 です。

本投では、Azure SQL Databaseで他のDBにクエリを投げる方法を紹介致します。

オンプレミスのSQL Serverの場合は、同じインスタンスにいるならSELECT * FROM [データベース名].[スキーマ名].[テーブル名]でSELECT出来ましたが、Azureでは出来ず、不便だと思った事はありませんか。

そんな時の解決方法を今回紹介致します。

他DBへSQLを投げる準備

手順1、2、3は以前紹介されているAzure SQL DataWarehouse① PolyBaseで高速インポートとほぼ同じ手順になります。

1.マスターキーの作成データベースマスターキーが未作成の場合は作成してください。データスコープの資格情報を作成するために必要です。 一度作成すれば以降は作成不要です。

2.データベースの資格情報を作成します。
3.外部データソースの定義
外部データソースの定義を作成します。
DATA SOURCE、DATABASE_NAMEにリソース名
LOCATIONにAzureに保存するサーバー
CREDENTIALに2で作成した資格情報を入力します。
3までの手順が完了すると、SSMSから参照した時に、外部データソースに追加したデータベースが表示されます。


他DBへSQLを投げる

上記手順が全て完了したら準備は完了しましたので、後はSQLを投げるだけになります。
投げ方はAzure SQL Databaseに用意されているストアド プロシージャ「sp_execute_remote」を利用します。


詳細はMSサイトsp_execute_remote (Azure SQL データベース) | Microsoft Docsをご参照ください。

以上、Azure SQL Databaseで他のDBにクエリを投げる方法の紹介でしたが、いかがでしたでしょうか。
次回以降もSharePointやAzure、O365全般について紹介していきたいと思います。
他、弊社の業務内容などにご興味のある方は、お気軽にお問い合わせください。
(お問い合わせはこちらのページをご確認の上、メールアドレス「info@deepcom.co.jp」までご連絡ください。)

コメントは利用できません。