创建是/否即布尔字段时,从访问数据库或一般转换的最佳实践是什么?
当前回答
您可以使用数据类型位
插入的大于0的值将存储为'1'
插入的小于0的值将存储为'1'
插入为“0”的值将存储为“0”
这适用于MS SQL Server 2012 Express
其他回答
创建表时的示例用法:
[ColumnName] BIT NULL DEFAULT 0
BIT数据类型通常用于存储布尔值(0表示false, 1表示true)。
钻头是最合适的选择。另外,我曾经使用int来实现这个目的。true为1,false为0。
您可以使用BIT类型,可以有1或0,如果允许使用NULL,也可以使用NULL。
BIT类型转换:
除0到1以外的任何整数值。 除“0”到1之外的任何整型字符串值。 0到0。
然后,可以创建一个BIT类型的表,如下图所示:
CREATE TABLE doctor (
id INT IDENTITY,
name NVARCHAR(50),
on_call BIT, -- Here
PRIMARY KEY(id)
)
GO
然后插入行,如下图所示:
INSERT INTO doctor
VALUES ("John", 1), ("Tom", 0), ("Lisa", "-23"), ("Kai", "0"), ("Bob", NULL)
GO
1> SELECT * FROM doctor
2> GO
id name on_call
-- ---- -------
1 John 1 <- 1
2 Tom 0 <- 0
3 Lisa 1 <- "-23"
4 Kai 0 <- "0"
5 Bob NULL <- NULL
您可以使用位列类型。