视图定义未在 SQL Server 中更新

Posted

技术标签:

【中文标题】视图定义未在 SQL Server 中更新【英文标题】:View definition is not getting updated in SQL Server 【发布时间】:2013-03-11 11:29:12 【问题描述】:

我有一个相当复杂的视图,它是使用 SQL Server Migration Assistant for Oracle 生成的,但有一些逻辑错误和一些语法错误。

但是,当我更新它的 SQL 语句时(用右键单击 -> 设计 然后更新文本区域中的 sql),当我 右键单击时会显示新的 SQL -> Script view as -> Create/Alter to,但是当我用右键单击-> design 打开视图设计时,它没有显示更新的 SQL 语句。

由于原始视图定义有语法错误,我收到错误: SQL text cannot be represented in the grid pane and diagram pane.

我已尝试重新启动 SQL 实例并使用sp_refreshview <ViewName>,但没有成功。

我在 Windows Server 2008 R2(64 位)上使用 SQL Server 2012 Enterprise(64 位)。

任何帮助将不胜感激。

【问题讨论】:

为什么会出现问题?无论如何,最好避免使用视觉设计师。 【参考方案1】:

视觉设计师无法可视化可在视图中使用的每个构造。语法错误也会导致此错误。

如果您收到此错误,您唯一的选择是不使用可视化设计器,而是手动编辑 SQL。

你可以使用

Right-Click -> Script View As -> ALTER to -> New Query Editor Window

一旦您纠正了错误,并且可以成功运行ALTER VIEW,您可能就可以使用设计器了。

【讨论】:

虽然我已经解决了所有错误,但我仍然无法使用设计器,但我似乎没有其他选择!

以上是关于视图定义未在 SQL Server 中更新的主要内容,如果未能解决你的问题,请参考以下文章

mssql sql server 系统更新,如何正确的增加表字段

Sql server 未在查询中使用嵌套 case 语句更新记录

sql server 数据定义常用sql

sql server 数据定义常用sql

listview 项目未在自定义适配器的 getview 方法中显示分配的值

自定义用户控件的 DependencyProperty 绑定未在更改时更新