Sohail Shahzad

Sohail Shahzad

  • 1.5k
  • 262
  • 849

Call sql view inside store procedure

Jun 14 2019 8:57 AM
Currently working on BI tool in .NET MVC. i have created procedure that accept sql statement as string to clone temp table from another table using select query. Now i want to create view of temp table that is recently created by using string.How to do i perform this task.
 
My code is 
  1. USE [AirViewX2_DEV]  
  2. GO  
  3. /****** Object: StoredProcedure [dbo].[Tmp_CloneOfDataset]  ******/  
  4. SET ANSI_NULLS ON  
  5. GO  
  6. SET QUOTED_IDENTIFIER ON  
  7. GO  
  8. ALTER PROCEDURE [dbo].[Tmp_CloneOfDataset]  
  9. @Filter NVARCHAR(500),  
  10. @Value NVARCHAR(50)=NULL  
  11. AS  
  12. BEGIN  
  13. SET NOCOUNT ON  
  14. --IF(@Filter='CLONE_OF_DATASET')  
  15. --BEGIN  
  16. DECLARE @GetTemName varchar(200)= RTRIM(LTRIM( SUBSTRING(@Filter,CHARINDEX('into',@Filter)+4,CHARINDEX('from',@Filter)-CHARINDEX('into',@Filter)-4)))  
  17. IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = @GetTemName)  
  18. BEGIN  
  19. DECLARE @alreadyExist int =1;  
  20. return @alreadyExist  
  21. --DECLARE @SQL NVARCHAR(MAX)  
  22. --SELECT @SQL = 'DROP TABLE dbo.' + QUOTENAME(@GetTemName) + '';  
  23. -- EXEC sp_executesql @SQL;  
  24. EXECUTE(@Filter)  
  25. END  
  26. ELSE  
  27. BEGIN  
  28. EXECUTE(@Filter)  
  29. declare @sqlcode varchar(max)  
Here i want to create sql view for  @GetTemName 
  1. --select @sqlcode = 'create view @GetTemName as select * from MyTable'  
  2. --@sqlcode+=' '@GetTemName  
  3. --exec (@sql)  
  4. DECLARE @status varchar(200) ='Done'  
  5. SELECT @status  
  6. END  
  7. --END  
  8. END 

Answers (5)