使用存储过程中的动态名称和列创建SQL视图

时间:2019-06-17 08:03:39

标签: sql-server stored-procedures

我想使用具有动态名称和动态列的存储过程来创建SQL表。在存储过程中创建表之后,我要创建一个具有该存储过程中的动态表名和动态列的视图。

CREATEPROCEDURE [dbo].[Tmp_CloneOfDataset]
  @Filter NVARCHAR(500),
  @Value NVARCHAR(50)=NULL
AS
BEGIN
  SET NOCOUNT ON

  DECLARE @GetTemName varchar(200)= RTRIM(LTRIM( SUBSTRING(@Filter,CHARINDEX('into',@Filter)+4,CHARINDEX('from',@Filter)-CHARINDEX('into',@Filter)-4)))

  IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = @GetTemName)    
  BEGIN
    DECLARE @alreadyExist int =1;
    return @alreadyExist

    EXECUTE(@Filter)
  END
  ELSE
  BEGIN
    EXECUTE(@Filter)

    // Here i want to create view after creating table
    DECLARE @status varchar(200)='SELECT * from '+ @GetTemName

    Execute(@status)
  END     
END

0 个答案:

没有答案
相关问题