gpt4 book ai didi

sql - "Error validating formula"使用 CONVERT(DATE, column) 添加计算列时

转载 作者:行者123 更新时间:2023-12-04 14:25:50 27 4
gpt4 key购买 nike

我正在尝试通过 SSMS 将计算列添加到表中 - 我宁愿不要详细了解为什么基列是 VARCHAR(10)而不是 DATE不,我对改变它不感兴趣。

当我输入公式 CONVERT(DATE, [charDob])在表设计器 SSMS 报告中:

Error validating the the formula for column charDobTyped.



使用公式 [charDob]按预期“工作”,这意味着该列已正确绑定(bind)。还有公式 CONVERT(DATE, '2001')按预期“工作” - 因此使用导致错误的列存在一些问题。

原始列是 VARCHAR(10)并包含 NULL 值或可转换为 DATE 的值.查询 SELECT CONVERT(DATE,charDob) as dob FROM people按预期工作。此外,错误消息是关于“无效公式”而不是关于数据转换错误,所以我不认为不可转换是造成这种情况的原因。

我已经用新的计算列和一个虚拟值保存了表并重新连接到数据库——这是为了确保不会发生奇怪的缓存问题,就像有时会发生的那样。该错误独立于持久化标志而持续存在——如果它很容易关闭就好了。

最佳答案

Management Studio 并不是执行大多数 DDL 的最佳方式。请打开一个新的查询窗口并使用:

ALTER TABLE dbo.whatever ADD newcolumn AS (CONVERT(DATE, CharDob));

这是具体的错误:

http://connect.microsoft.com/SQLServer/feedback/details/291134/katmai-table-designer-cant-validate-computed-column-formula

在这种情况下,“下一个版本”肯定是 SQL Server 2012,因此如果您使用的是 2008 或 2008 R2 SSMS(为什么?),该修复将不适用于您。

关于sql - "Error validating formula"使用 CONVERT(DATE, column) 添加计算列时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15711807/

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