2010-04-17 76 views
0

我在想,是否有一种方法可以在Management Studio中更改我正在使用的模式。例如,我可能有一个dbo的默认模式。但是有时候我可能想要在会计模式中查询对象。如果我能发出一个命令并使其成为可能,那么我不再必须在表和视图之前包含会计。但下一次我进入时,我会回到默认的dbo。动态地更改我的模式

回答

0

你应该总是在你的对象前加一个模式。在AdventurWorks数据库中,你会发现大量使用模式的:

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

在每个查询,你的模式前缀的对象,他们用了一段分开。 (<schema>.<object>)。当你省略模式时,系统部分需要做更多的工作来确定你想要的对象。即使您引用的所有对象都是dbo,您也应该在所有对象引用中包含dbo。现在

,所有的说,你可以使用ALTER USER更改默认的模式:

ALTER USER userName WITH DEFAULT_SCHEMA = schemaName 

即使是这样,我会强烈建议你总是包括架构引用任何对象时。

+0

我知道我总是可以使用模式名称,并且我可以更改默认模式。我正在寻找的是一种快速的方法来改变那个默认的特定连接。 我明白完全限定名称的作用,但作为一个诚实的人,有时候我只想快速地构建原型,而没有额外的架构信息开销。 – Kirk 2010-04-18 13:18:45

+0

@Kirk - 没有办法为每个连接设置默认模式。唯一的方法就是使用Alter语句来改变你的用户。当然,您可以在脚本的顶部和另一个底部放置alter语句来重置它。 – Thomas 2010-04-18 15:10:55