因此,在Access中,您可以选择列数据类型“是/否”,并在输入选项“是”和“否”时询问您。然而,我没有看到任何来自微软的SQL Server Management Studio,我已经四处搜索,看到“位”是类型,但是当我放入位并且我去添加信息时,它显示为普通列类型信息。或者我应该知道我自己要么0或1?SQL Server Management Studio - 是/否值类型
此外,是0真或假?
因此,在Access中,您可以选择列数据类型“是/否”,并在输入选项“是”和“否”时询问您。然而,我没有看到任何来自微软的SQL Server Management Studio,我已经四处搜索,看到“位”是类型,但是当我放入位并且我去添加信息时,它显示为普通列类型信息。或者我应该知道我自己要么0或1?SQL Server Management Studio - 是/否值类型
此外,是0真或假?
SQL Server不具有布尔数据类型。最接近的近似值是位。但那是一个数字类型,而不是布尔类型。另外,它只支持2个值 - 0或1(和一个非值,NULL)。
但是,SQL(标准SQL以及T-SQL方言)描述了三值逻辑 - TRUE
,FALSE
和UNKNOWN
。所以位实际上并不是最好的,如果你需要所有3个州。
使用它,你不能直接在if语句中使用该值,例如:
IF CONVERT(bit, 0)
BEGIN
print 'Ok'
END
不会解析和错误的结束。所以,你需要写下如下:
IF CONVERT(bit, 0) = 0
在phpmyadmin中它是一样的逻辑吗? – Ran 2015-02-10 10:17:22
在MS SQL中bit
相当于boolean
。
https://msdn.microsoft.com/en-us/library/ms177603.aspx
在这里,你可以阅读更多有关。
1
将是Yes
0
相当于将是No
NULL
相当于将是Undefined
等效(如果在Access中存在)
MSAccess无法将NULL或UNDEFINED分配给“是/否”列。如果你想在Access中使用它,请远离位置。 – Oliver 2015-02-10 10:12:00
在SQL Server中相当于boolean
数据类型是Bit
。 Bit
可以取值0(假)或1(真)。如果你想设置创建您可以设置表的默认值,以你的位区
...
myBoolean Bit, default 1,
..
只是一句警告:如果您打算使用MSAccess作为SQL Server的前端,那么请远离位。 Access将尝试将其映射到“是/否”字段,并在位列包含NULL时失败,这在MSAccess中是不可能的。如果您打算使用此方案,请在SQL Server中使用带有约束的-1/0的int,该映射为MSAccess的“是”和“否”。 – Oliver 2015-02-10 10:08:04
你知道phpmyadmin吗?这是否有点和?如果是,我应该放多大? – Ran 2015-02-10 10:29:13