动态更改我的架构

时间:2010-04-17 00:34:49

标签: sql-server-2005 tsql sql-server-2008

我想知道是否有办法在Management Studio中更改我正在使用的架构。例如,我可能有一个dbo的默认架构。但有时我可能想要在会计模式中查询对象。如果我可以发出命令并使其成为所以我不再必须在表和视图之前包含会计,这将是很好的。但是下次我进去时,我将恢复默认的dbo。

1 个答案:

答案 0 :(得分:0)

您应该始终在对象前面加上架构。在AdventurWorks数据库中,您会注意到模式的广泛使用:

Select ... From Person.Contact
Select ... From Person.StateProvince

在每个查询中,为对象添加模式前缀,并用句点分隔它们。 (<schema>.<object>)。当您省略模式时,系统需要更多的工作来确定您想要的对象。即使您引用的所有对象都是dbo,也应在所有对象引用中包含dbo

现在,尽管如此,您可以使用ALTER USER更改默认架构:

ALTER USER userName  WITH DEFAULT_SCHEMA = schemaName

即便如此,我强烈建议您在引用任何对象时始终包含架构。