如何在SQL视图中将列指示为NULL?

时间:2013-07-19 22:55:47

标签: sql entity-framework view

我有一个问题:我可以用NULLABLE列创建一个视图吗?并且,如果它可能,我该如何定义它?

目前,我试图通过以下声明获得此行为

SELECT     ISNULL(aaa, ' ') AS aaa, 
FROM table

但是当我在.NET Entity Framework中导入此视图时,它会将所有列都视为NOT NULL。

你有什么建议吗?

提前致谢,

代比

2 个答案:

答案 0 :(得分:0)

我通过使用select into创建表来测试可空性。这是一个例子:

select 'aaa' as col1,
       (case when 1=1 then 'aaa' end) as col2,
       cast('aaa' as varchar(255)) as col3
into t;

然后,您可以在NULLABILITY中检查INFORMATION_SCHEMA.COLUMNS

select *
from information_schema.columns
where table_name = 't';

在这种情况下,使用cast()的第三个选项会产生NULLABLE列。

答案 1 :(得分:0)

我的建议是从您的视图中删除ISNULL语句,当.net有疑问时,它会使导入的列可以为空。