什么是最好的做法对于创建一个是/否布尔现场转换时从一个access数据库或一般?

有帮助吗?

解决方案

等效是位字段。

在SQL使用0和1来设定(在Access只是作为一个是/否字段)的比特字段。在Management Studio它显示为假/真值(至少在最近的版本)。

当通过ASP.NET访问数据库,将暴露字段的布尔值。

其他提示

BIT数据类型通常用于存储布尔值(0代表假,1代表真)。

可以使用bit列类型。

可以使用BIT字段。

有关添加BIT列到现有的表,SQL命令将如下所示:

ALTER TABLE table_name ADD yes_no BIT

如果你想创建一个新的表,你可以这样做:CREATE TABLE table_name (yes_no BIT)

可以使用该数据类型bit

插入的值其是大于0的将被存储为“1”

插入的值,其是小于0将被存储为“1”

插入作为 '0' 的值将被存储为 '0'

这适用于MS SQL Server 2012点的快速

示例用法在创建表:

[ColumnName]     BIT   NULL   DEFAULT 0

目前已经回答说,使用位。我将增加更多,这些问题的答案。

你应该使用 为代表的布尔的价值观。

言论自MSDN文章。

位可以采取一个价值1,0,NULL.

SQL服务器数据库引擎优化存储位列。如果 有8个或更少位列于一个表,列储存的作为 1字节。如果有来自9至16位列,列 储存为2字节等等。

串的价值观真正的和虚假的可以转化为比值:真的 转换到1和假转化为0。

转换到位的促进任何零价值为1。

参考

注:它是好的做法保持价值的1和0只与数据的类型 NOT NULL

作为位有价值1,0和空。看到的事实表。因此,计划的价值观。它可能会增加混乱,通过允许空值的比特数据的类型。

enter image description here

参考

可以使用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将是最简单的,并且还占用最小的空间。不相对于“Y / N”非常冗长,但我很好与它

bit是最合适的选择。否则,我曾经使用int用于这一目的。 1true0false

  

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

这将提供TrueFalse值选项。如果你希望只使用10则可以使用这种方法:

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

但是,我将严格提醒BIT如在 BEST 选项。希望完全是帮助别人。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top