我的数据库中有一个模式定义。除了现在每次执行 sql 语句时我都必须提供模式......
从 [myschema].table 中选择 *
我使用 Management Studio 为我的用户设置了默认架构,并且还运行了
使用 DEFAULT_SCHEMA [myschema] 更改用户 myUser
当编写没有模式的查询时,我仍然得到无效的对象“表”(SELECT * FROM table)
有没有一种方法可以编写SELECT * FROM table
而不必一直指定架构名称?
它在 SQL 2005 上使用 SQL Management Studio。
最佳答案
用户是否是SA
,如果是的话,根据documentation,它将不起作用。 SA
用户始终默认使用 dbo
架构。
The value of DEFAULT_SCHEMA is ignored if the user is a member of the sysadmin fixed server role. All members of the sysadmin fixed server role have a default schema of dbo.
关于sql-server - SQL Server 架构和默认架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3806245/