2015-02-10 85 views
2

因此,在Access中,您可以選擇列數據類型「是/否」,並在輸入選項「是」和「否」時詢問您。然而,我沒有看到任何來自微軟的SQL Server Management Studio,我已經四處搜索,看到「位」是類型,但是當我放入位並且我去添加信息時,它顯示爲普通列類型信息。或者我應該知道我自己要麼0或1?SQL Server Management Studio - 是/否值類型

此外,是0真或假?

+0

只是一句警告:如果您打算使用MSAccess作爲SQL Server的前端,那麼請遠離位。 Access將嘗試將其映射到「是/否」字段,並在位列包含NULL時失敗,這在MSAccess中是不可能的。如果您打算使用此方案,請在SQL Server中使用帶有約束的-1/0的int,該映射爲MSAccess的「是」和「否」。 – Oliver 2015-02-10 10:08:04

+0

你知道phpmyadmin嗎?這是否有點和?如果是,我應該放多大? – Ran 2015-02-10 10:29:13

回答

2

SQL Server不具有布爾數據類型。最接近的近似值是。但那是一個數字類型,而不是布爾類型。另外,它只支持2個值 - 0或1(和一個非值,NULL)。

但是,SQL(標準SQL以及T-SQL方言)描述了三值邏輯 - TRUEFALSEUNKNOWN。所以實際上並不是最好的,如果你需要所有3個州。

使用它,你不能直接在if語句中使用該值,例如:

IF CONVERT(bit, 0) 
BEGIN 
    print 'Ok' 
END 

不會解析和錯誤的結束。所以,你需要寫下如下:

IF CONVERT(bit, 0) = 0 
+0

在phpmyadmin中它是一樣的邏輯嗎? – Ran 2015-02-10 10:17:22

1

在MS SQL中bit相當於boolean

https://msdn.microsoft.com/en-us/library/ms177603.aspx

在這裏,你可以閱讀更多有關。

1將是Yes
0相當於將是No
NULL相當於將是Undefined等效(如果在Access中存在)

+0

MSAccess無法將NULL或UNDEFINED分配給「是/否」列。如果你想在Access中使用它,請遠離位置。 – Oliver 2015-02-10 10:12:00

1

在SQL Server中相當於boolean數據類型是BitBit可以取值0(假)或1(真)。如果你想設置創建您可以設置表的默認值,以你的位區

... 
myBoolean Bit, default 1, 
.. 
相關問題