在 SQL Server 2005 中可以创建一个既持久又定义为 NOT NULL(不能包含空值)的计算列。当使用像 Linq2Sql 这样的库时,如果我们想避免大量的手动工作来确保我们的代码列“始终”具有值,那么第二个属性非常重要。
使用直接 SQL,这非常简单:
ALTER TABLE Sales ADD Total AS (Price + Taxes) PERSISTED NOT NULL
在 SQL Server Management Studio 的设计窗口中查看时,此列正确显示为计算列,没有“允许空值”复选标记。但是,我在设计器中创建新列以匹配此模式时遇到了问题:在计算列规范 ->(公式)属性中输入公式,并通过将 Is Persisted 设置为 Yes 来指定持久属性,但尝试取消选中新计算列上的“允许空值”会导致出现一个对话框,指出“无法修改属性”。
我需要涵盖广泛的技能水平,为此,我需要提供添加列的过程,即使是新手也可以遵循(这意味着 Management Studio 设计器窗口)。 SQL Server Management Studio 中是否有一些秘密可以在设计器中创建一个新的计算列作为 NOT NULL,类似于如何使用 CTRL+0 将空值插入到单元格中?
你可以用这个来欺骗ISNULL(Price + Taxes, 0)
它使用默认值 0 进行 NULL 计算。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)