Я хочу, чтобы хранимая процедура отображала все столбцы, но я бы выбрал имя таблицы внешне, как EXEC spDisplay 'tblName'. Я хочу, чтобы имя таблицы в качестве выходного параметра ... Как я могу это сделать?Как получить все столбцы таблицы, тогда как TableName является выходным параметром?
-1
A
ответ
1
Использование динамического SQL, как показано ниже ..
create proc spDisplay
@TableName as varchar(100)
as
Begin
exec('select top 10 * from '[email protected])
End
1
Ниже SP, он будет принимать ИмяТаблицы в качестве входного параметра.
CREATE PROCEDURE MySp
@TableName VARCHAR(MAX)
AS
BEGIN
DECLARE @Sql VARCHAR(MAX)
SET @Sql = 'SELECT * FROM ' + @TableName
EXEC(@Sql)
END
Ниже приводится запрос для выполнения выше Sp, здесь эй мое имя таблицы
EXEC MySp 'EMP'
+0
Работали спасибо ..... –
Работал спасибо ..... –