admin

为SQL查询设置默认架构

sql

有没有一种方法可以设置查询的模式,以便在其余查询中我可以仅按表名引用表,而无需在表名前添加表名?

例如,我想做这样的事情:

Use [schemaName]
select * from [tableName]

与此相反:

select * from [schemaName].[tableName]

阅读 203

收藏
2021-05-10

共1个答案

admin

一个快速的谷歌把我指向了这个页面。它说明从sql server 2005开始,您可以使用ALTER
USER语句设置用户的默认架构。不幸的是,这意味着您将对其进行永久更改,因此,如果需要在模式之间进行切换,则每次执行存储过程或一批语句时都需要对其进行设置。

如果您使用的是sql server 2000或更早版本,则此页面说明用户和架构是等效的。如果您没有在表名前面加上schema \ user,则sqlserver将首先查看当前用户拥有的表,然后查看dbo拥有的表来解析表名。似乎对于所有其他表,您必须在schema \ user之前。

2021-05-10