Di SQL Server, Anda dapat menggunakan OPENQUERY untuk mengeksekusi kueri pass-through pada server tertaut.
OPENQUERY biasanya dirujuk dalam FROM klausa kueri seolah-olah itu adalah tabel, tetapi juga dapat direferensikan sebagai tabel target dari INSERT , UPDATE , atau DELETE pernyataan.
Artikel ini menyajikan contoh penggunaan OPENQUERY untuk melakukan INSERT kueri pass-through.
Contoh
Katakanlah kita membuat tabel di server tertaut yang disebut Cats , dalam database bernama Pets .
Sesuatu seperti ini:
EXEC ('
USE [Pets];
CREATE TABLE [dbo].[Cats](
[CatId] [int] IDENTITY(1,1) NOT NULL,
[CatName] [varchar](60) NULL
) ON [PRIMARY];
') AT Homer;
Dan sekarang kita ingin menyisipkan data menggunakan INSERT kueri pass-through.
Kita bisa melakukannya seperti ini:
INSERT OPENQUERY (
Homer,
'SELECT CatName FROM Pets.dbo.Cats'
)
VALUES
( 'FluffDupp' ),
( 'Scratch' ),
( 'Long Tail' );
Dalam hal ini, server yang ditautkan disebut Homer , dan kami memasukkan tiga nilai ke dalam Pets.dbo.Cats tabel.
Periksa Hasil
Sekarang kita dapat menjalankan SELECT kueri pass-through untuk melihat hasilnya.
SELECT * FROM OPENQUERY (
Homer,
'SELECT * FROM Pets.dbo.Cats'
); Hasil:
+---------+-----------+ | CatId | CatName | |---------+-----------| | 1 | FluffDupp | | 2 | Scratch | | 3 | Long Tail | +---------+-----------+
Perhatikan bahwa OPENQUERY tidak menerima variabel untuk argumennya.