gpt4 book ai didi

sql-server - 如何在 SQL Server 中使计算列可为空

转载 作者:行者123 更新时间:2023-12-05 04:18:47 25 4
gpt4 key购买 nike

我使用 SQL Server 2008 和 Entity Framework 4.1 数据库优先方法。

有什么方法可以创建可为 null 的计算列吗?

我不能这样创建:

Alter Table Employee Add FullName nullable as LastName + ' ' +FirstName

如果答案是否定的,那么有什么方法可以在映射到计算列的 EF 的 EDMX 文件中创建适当的标量属性 Nullable

最佳答案

默认情况下可为空的计算列是表达式涉及任何其他可为空的列、表达式或任何函数。如果你想要 NON-NULL 计算列,你应该用 ISNULL 函数包装列的表达式。

Alter Table Employee Add FullName as LastName + ' ' +FirstName

在这种情况下,仅当其中一列(FirstName、LastName)也可以为 null 时,FullName 才可以为 null

如果您想要可空计算列与不可空表达式列组成,则使用用户定义函数作为表达式:

CREATE FUNCTION dbo.FullName(@LastName nvarchar(100), @FirstName nvarchar(100))
RETURNS nvarchar(201)
AS
BEGIN
RETURN @LastName + N' ' +@FirstName
END
GO

Alter Table Employee Add FullName as dbo.FullName(LastName, FirstName)

关于sql-server - 如何在 SQL Server 中使计算列可为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9051760/

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