gpt4 book ai didi

sql-server - SQL 服务器 : view column datatype does not change when underlying table datatype is changed?

转载 作者:行者123 更新时间:2023-12-03 16:26:29 25 4
gpt4 key购买 nike

如果我有一个这样的表 MyTable:

Value1 decimal

然后我有一个 View MyView:

Select SUM(Value1) as SumValue1 from MyTable

当我在 View 的列部分下查看 SSMS 中 View 的列数据类型时,它是一个小数。

现在,如果我将表修改为:

Value1 real

如果我在 SSMS 中刷新 View 的列部分,数据类型仍然是小数。现在,如果我打开 View 并重新保存它,数据类型将变为 float 。

这是应该的吗?在我重新保存之前, View 似乎不会改变。

最佳答案

是的,这是预期的。可以通过使 View 成为可能的方式更改表 completely invalid .如果你想防止这种情况发生,你可以使用 WITH SCHEMABINDING创建 View 时的选项。来自链接的文章:

将 View 绑定(bind)到基础表的架构。当指定 SCHEMABINDING 时,不能以影响 View 定义的方式修改基表。必须首先修改或删除 View 定义本身,以移除对要修改的表的依赖。

关于sql-server - SQL 服务器 : view column datatype does not change when underlying table datatype is changed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13204803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com