MSSQL stored prosedure içinde "CREATE TABLE @TableName" seklinde degisken isimli olarak tablo olusturmaya izin vermemektedir. Fakat biz bu islemi biraz kurnazlik yaparak gerçeklestirebiliriz. Dinamik isimli tablo olusturmak için önce tablonun olusturulmasini gerçeklestirecek kodlari string halinde yazariz ve tablo ismi kismini da stringe degisken olarak ekleriz. Daha sonra EXEC() komutu ile bu stringi çagirip tablonun olusmasini saglayabiliriz. Örnek olarak alttaki kodu inceleyebilirsiniz.
CREATE PROCEDURE dbo.createTable
(
@TableName varchar(10)
)
AS
DECLARE @SQL varchar(2000)
SET @SQL ='
create table ' + @TableName + '
(
id int,
name varchar(10)
)
'
EXEC(@SQL)