代码之家  ›  专栏  ›  技术社区  ›  Haoest

SQLServer:为用户选择默认架构时出现问题

  •  0
  • Haoest  · 技术社区  · 14 年前

    我将一个模式命名为错误的,所有表都是用一个错误名称的模式创建的。所以我创建了一个,并使用alter schema将表转移到上面。

    select * from table1, 
    

    而不是

    select * from myschema.table1, 
    

    1 回复  |  直到 14 年前
        1
  •  2
  •   Jagmag    14 年前

    您可以尝试执行以下操作:

    ALTER USER userName  
    WITH DEFAULT_SCHEMA =myschema
    

    假设“myschema”是您希望用户默认使用的新模式。

    我知道您提到新用户是用新模式创建的,但是如果是这样的话,那么您不应该看到这种错误。看来出了点问题。

    一般来说,

    1. 当前数据库中登录会话的默认模式是分配给当前数据库级主体-数据库用户的默认模式。

    2. 如果引用的是默认架构中的对象,则不需要指定架构名称。

    3. 如果引用的是默认架构之外的对象,则必须指定架构名称。

    有关会话等模式的更多详细信息,请参阅 this