Cross Query Database in Azure SQL
Pada posting berjudul "Cross Query Database in Azure SQL" kali ini. Penulis akan memberikan langkah-langkah cara untuk membuat cross query antara DB dalam server yang sama maupun cross query antara DB dengan server yang berbeda. Prinsip dalam 2 hal tersebut memang sama untuk SQL Azure.
Langkah 1
Membuat master enkripsi yang akkan digunakan sebagai pengaman koneksi antara 2 database yang digunakan.CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'xxxxxxxxxx';
Langkah 2
Membuat nama credential yang akan digunakan sebagai autentikasi terhadap table yang akan diaksesCREATE DATABASE SCOPED CREDENTIAL cross_queries WITH IDENTITY = 'admin', SECRET = 'secret';
Langkah 3
Membuat eksternal data souce yang berisi server dan nama database yang akan diakses menggunakana autentikasi pada langkah 2CREATE EXTERNAL DATA SOURCE external_ds WITH (TYPE = RDBMS, LOCATION = 'sqlsource.database.windows.net', DATABASE_NAME = 'TEMP', CREDENTIAL = cross_queries);
Langkah 4
Membuat external table sebagai mirror terhadap source table. Skema maupun struktur harus sama persis dengan source table.CREATE EXTERNAL TABLE [config].[mapping_site](
[SiteID] [varchar](4) NULL,
[SiteName] [nvarchar](150) NULL,
[OldID] [nvarchar](4) NULL,
)
WITH
(
DATA_SOURCE = external_ds
);
Catatan :
Untuk setiap table yang akan diakses kita perlu mengulang langkah 4.
Dibawah ini adalah hasil eksternal tabel yang berhasil dibuat. Begitu table tesebut sudah berhasil dibuat maka kita dapat melakukan query seperti pada table biasa.
Semoga posting tentang "Cross Query Database in Azure SQL" diatas dapat bermanfaat.
Salam,