मैं एक संग्रहित प्रो लिखना चाहता हूं जो पैरामीटर का उपयोग करेगा, जो तालिका का नाम होगा।डायनामिक एसक्यूएल (पैरामीटर के रूप में पासिंग टेबल नाम)
उदा:
@tablename << Parameter
SELECT * FROM @tablename
यह कैसे संभव है?
मैं यह लिखा:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[GetAllInterviewQuestions]
@Alias varchar = null
AS
BEGIN
Exec('Select * FROM Table as ' @Alias)
END
लेकिन यह @Alias के पास गलत वाक्यविन्यास कहते हैं।
आरक्षित शब्दों और/या तालिका नाम में रिक्त स्थान शामिल करने वाले टेबल नामों से स्वयं को बचाने के लिए स्क्वायर ब्रैकेट में तालिका नाम को लपेटना थोड़ा बेहतर है। निष्पादन ('+ @ tablename +' से चुनें * जहां ... ') –