【发布时间】:2017-10-15 05:46:19
【问题描述】:
默认情况下,sql server 为boolean 字段分配一个NULL 值。
我如何告诉它默认使用'0'?
我尝试将默认值设置为 ((0)) 但它仍然存在于 NULL 上。
【问题讨论】:
-
你能显示你的表定义吗?
-
不,SQL Server 不默认使用 NULL,除非该列可以为空。如果您在可为空的列中插入 NULL,您将得到一个空值,而不是默认值。如果您不显式插入 NULL,您将始终获得默认值。
-
您要允许明确的
NULL值吗?如果没有,将列标记为not null似乎很简单。 -
发布你的表定义AND你用来插入数据的代码。如果你得到一个 NULL,要么你没有指定一个默认值,要么你明确地存储了一个 NULL 值
-
@user763539 - 使用 Tanner 的答案,但更改列定义以允许空值,它仍然输出
0和1。因此,无论您在做什么,它都不是最明显的事情,因此您需要创建一个小代码示例来演示一个带有默认值和插入的表这会导致插入null而不是默认值。
标签: sql-server