SQL सर्वर में, आप OPENQUERY
. का उपयोग कर सकते हैं लिंक किए गए सर्वर पर पास-थ्रू क्वेरी निष्पादित करने के लिए।
OPENQUERY
आमतौर पर FROM
. में संदर्भित किया जाता है किसी क्वेरी का खंड मानो वह एक तालिका हो, लेकिन इसे INSERT
की लक्ष्य तालिका के रूप में भी संदर्भित किया जा सकता है , UPDATE
, या DELETE
बयान।
यह लेख OPENQUERY
. का उपयोग करने का एक उदाहरण प्रस्तुत करता है एक INSERT
करने के लिए पास-थ्रू क्वेरी।
उदाहरण
मान लें कि हमने लिंक किए गए सर्वर पर Cats
. नामक एक तालिका बनाई है , Pets
. नामक डेटाबेस में .
कुछ इस तरह:
EXEC ('
USE [Pets];
CREATE TABLE [dbo].[Cats](
[CatId] [int] IDENTITY(1,1) NOT NULL,
[CatName] [varchar](60) NULL
) ON [PRIMARY];
') AT Homer;
और अब हम INSERT
. का उपयोग करके डेटा सम्मिलित करना चाहते हैं पास-थ्रू क्वेरी।
हम इसे इस तरह कर सकते हैं:
INSERT OPENQUERY (
Homer,
'SELECT CatName FROM Pets.dbo.Cats'
)
VALUES
( 'FluffDupp' ),
( 'Scratch' ),
( 'Long Tail' );
इस मामले में, लिंक किए गए सर्वर को Homer
. कहा जाता है , और हम Pets.dbo.Cats
. में तीन मान डाल रहे हैं टेबल।
परिणाम जांचें
अब हम एक SELECT
चला सकते हैं परिणाम देखने के लिए पास-थ्रू क्वेरी।
SELECT * FROM OPENQUERY (
Homer,
'SELECT * FROM Pets.dbo.Cats'
);
परिणाम:
+---------+-----------+ | CatId | CatName | |---------+-----------| | 1 | FluffDupp | | 2 | Scratch | | 3 | Long Tail | +---------+-----------+
ध्यान दें कि OPENQUERY
अपने तर्कों के लिए चर स्वीकार नहीं करता है।