创建是/否即布尔字段时,从访问数据库或一般转换的最佳实践是什么?


当前回答

在任意版本的SQL Server Management Studio中,使用BIT作为数据类型

它将为您提供True或False值选项。如果你想使用只有1或0,那么你可以使用这个方法:

CREATE TABLE SampleBit(
    bar int NOT NULL CONSTRAINT CK_foo_bar CHECK (bar IN (-1, 0, 1))
)

但我会严格建议BIT作为最佳选择。希望它能帮助到别人。

其他回答

Bit将是最简单的,也占用最少的空间。与“Y/N”相比,它不是很啰嗦,但我对它很满意。

您可以使用数据类型位

插入的大于0的值将存储为'1'

插入的小于0的值将存储为'1'

插入为“0”的值将存储为“0”

这适用于MS SQL Server 2012 Express

可以使用BIT字段

创建新表:

CREATE TABLE Tb_Table1
(
ID              INT,
BitColumn       BIT DEFAULT 1
)

在现有表中添加列:

ALTER TABLE Tb_Table1 ADD BitColumn  BIT DEFAULT 1

插入记录:

INSERT Tb_Table1 VALUES(11,0)

等效的是BIT字段。

在SQL中,您使用0和1来设置位字段(就像Access中的yes/no字段一样)。在Management Studio中,它显示为false/true值(至少在最近的版本中)。

当通过ASP访问数据库时。NET,它会将该字段公开为布尔值。

您可以使用位列类型。