【问题标题】:Rename SQL Server Schema name [duplicate]重命名 SQL Server 架构名称 [重复]
【发布时间】:2014-06-22 14:47:40
【问题描述】:

如何将 Sql Server 模式名称从大写重命名为小写。

在我的 SQL Server 命名约定中,我们必须为 Schema 使用小写名称而不是大写。

提前致谢

【问题讨论】:

  • 据我所知,没有支持的方法。如果您在不区分大小写的数据库中,我认为您必须将所有包含的对象移动到另一个模式,删除它,使用所需的大小写创建它,然后将所有对象移回。在区分大小写的数据库中,您只需创建一个具有正确名称的新模式并直接移动对象。

标签: sql-server sql-server-2008 sql-server-2008-r2 sql-server-2012


【解决方案1】:

您可能可以将所有对象从“MySchema”移动到临时架构,例如“tmp_schema”使用

ALTER SCHEMA NewSchema TRANSFER OldSchema.Object;

然后删除“MySchema”,重新创建为“myschema”,然后用相同的方法将所有对象移回。这篇文章有一个脚本,你可能会发现它很有用。

Rename SQL Server Schema

【讨论】:

  • 很好的答案,谢谢。但是,为什么不一次将它们从旧模式名称移到新模式名称呢?
  • SQL 服务器将看到 schema1 与 SCHEMA1 相同,因此不会让您创建它。这就是为什么您需要创建一个临时方案来放入内容,以便在创建大写版本之前删除小写版本,然后将对象从临时方案中移回。
  • 啊,谢谢 - 我搞砸了从大写转换为小写的部分,并认为 NewSchema 和 OldSchema 不同
猜你喜欢
  • 2010-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-22
  • 1970-01-01
  • 1970-01-01
  • 2018-12-11
  • 1970-01-01
相关资源
最近更新 更多