Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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 Server_Sql Server 2008_Tsql - Fatal编程技术网

Sql server 如何从架构创建表

Sql server 如何从架构创建表,sql-server,sql-server-2008,tsql,Sql Server,Sql Server 2008,Tsql,我的数据库中有一个名为tbRep的表 我在SQL Server数据库上有3个模式 十、 Y,Z 现在X&Y有了名为X.tbRep&Y.tbRep的表 但是,当我尝试从例如X.tbRep使用CREATE To脚本并尝试为新模式Z创建一个脚本时,它会抛出一个错误: Msg 2714,第16级,第6状态,第2行 数据库中已存在名为“tbRep”的对象 我做错了什么 我确信Z.tbRep不存在 创建脚本 -检查表是否不存在,如果不存在,请添加创建脚本 如果不存在,请从sys.tables中选择name,

我的数据库中有一个名为tbRep的表

我在SQL Server数据库上有3个模式 十、 Y,Z

现在X&Y有了名为X.tbRep&Y.tbRep的表

但是,当我尝试从例如X.tbRep使用CREATE To脚本并尝试为新模式Z创建一个脚本时,它会抛出一个错误:

Msg 2714,第16级,第6状态,第2行 数据库中已存在名为“tbRep”的对象

我做错了什么

我确信Z.tbRep不存在

创建脚本


-检查表是否不存在,如果不存在,请添加创建脚本 如果不存在,请从sys.tables中选择name,其中name='tpRep' 开始 -表创建代码在这里
结束

在CREATE TABLE语句之前,您是否可以执行此语句,并告知我们您是否有任何收获

select * 
from sys.all_objects 
where sys.all_objects.name = 'tbRep' and 
sys.all_objects.type = 'U' and
sys.all_objects.schema_id = (select schema_id from sys.schemas where sys.schemas.name = 'Z')

您能显示实际的create语句吗?您是否验证了模式Z还没有这样的表?如果您右键单击X.tbRep并说Script To>,则需要将[X]更改为[Z]。您是否绝对确定没有Z.tbRep?尝试失败可能会留下这样的表。没有Z.tbRep。我已经发布了代码来尝试从INFORMATION\u SCHEMA.TABLES中选择*它显示了什么?或者更好的方法是:从sys.all\u objects中选择*它返回多少行?
select * 
from sys.all_objects 
where sys.all_objects.name = 'tbRep' and 
sys.all_objects.type = 'U' and
sys.all_objects.schema_id = (select schema_id from sys.schemas where sys.schemas.name = 'Z')