【问题标题】:Creating view in SQL Server 2008 using SSMS使用 SSMS 在 SQL Server 2008 中创建视图
【发布时间】:2012-02-15 16:30:48
【问题描述】:

我已使用 SSMS 创建视图,但找不到更改架构的选项。在这种情况下如何更改架构?

【问题讨论】:

  • 您要更改视图吗?右键单击,设计(或编辑)
  • @Matten 我们不能在创建它时选择它,我在设计中也找不到它
  • @Kitex... 可能只是咖啡不够,但我不明白你的问题 :-) 在 SSMS 中,您可以通过对所需的表、列进行建模并将它们链接到以图形方式创建视图彼此(而不是编写必要的 sql 代码)。那你有什么问题?
  • @Kitex - 最简单的解决方案是不要打扰视图设计器。它不支持row_number 之类的结构,并且会破坏您的代码格式。在脚本环境中使用智能感知,现在想不出想要使用它的充分理由。
  • 完全同意@Martin。视图设计器还有其他几个错误。 “简单”与“更好”不同——尤其是当它改变了查询的预期逻辑时。如果你没有抓住它,那就更糟了。

标签: sql sql-server-2008 schema


【解决方案1】:

您可以通过 TSQL ALTER SCHEMA ... TRANSFER ... 将视图更改为新架构。下面的完整示例

CREATE VIEW dbo.Foo
AS
SELECT 1 AS X

GO

CREATE SCHEMA bar

GO
ALTER SCHEMA bar TRANSFER dbo.Foo;

SELECT *
FROM bar.Foo

通常只需使用 CREATE VIEW bar.xyz 在正确的架构中创建它。

就 SSMS 视图设计器而言,Ctrl + S 上出现的对话框只接受一个名称,并且在保存视图之前无处输入架构您可以打开属性窗口(使用 F4)并在那里定义架构。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-02
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    • 2011-10-03
    • 2021-11-28
    • 2013-09-06
    相关资源
    最近更新 更多