Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL Server中使用同义词创建新表_Sql_Sql Server 2008_Synonym - Fatal编程技术网

在SQL Server中使用同义词创建新表

在SQL Server中使用同义词创建新表,sql,sql-server-2008,synonym,Sql,Sql Server 2008,Synonym,我为这个表创建了一个同义词ParaPITD.dbo.BM_00_PolicyMaster,它指向ParaPITDYYYYMM.dbo.BM_00_PolicyMaster 现在还没有桌子,所以它是一个占位符 我有一个创建临时表BM_00_PolicyMaster的存储过程,现在我想在同义词指向的占位符中插入或选择,并在ParaPITDYYYYMM.dbo.BM_00_PolicyMaster中创建表 如果我运行这个: select * into ParaPITD.dbo.BM_00_Polic

我为这个表创建了一个同义词ParaPITD.dbo.BM_00_PolicyMaster,它指向ParaPITDYYYYMM.dbo.BM_00_PolicyMaster

现在还没有桌子,所以它是一个占位符

我有一个创建临时表BM_00_PolicyMaster的存储过程,现在我想在同义词指向的占位符中插入或选择,并在ParaPITDYYYYMM.dbo.BM_00_PolicyMaster中创建表

如果我运行这个:

select * 
into ParaPITD.dbo.BM_00_PolicyMaster
from #BM_00_PolicyMaster
INSERT INTO ParaPITD.dbo.BM_00_PolicyMaster
   SELECT * 
   FROM #BM_00_PolicyMaster 
它在ParaPITD.dbo.BM_00_PolicyMaster中创建表,并忽略同义词

如果我运行这个:

select * 
into ParaPITD.dbo.BM_00_PolicyMaster
from #BM_00_PolicyMaster
INSERT INTO ParaPITD.dbo.BM_00_PolicyMaster
   SELECT * 
   FROM #BM_00_PolicyMaster 
它给了我一个无效的对象错误,就像表在插入之前必须存在一样

感谢您的帮助-感谢您的文档:

不能在DDL语句中引用同义词

以及创建表的任何语句,包括SELECT INTO,都将作为DDL语句计数。请看这里: