可能重複:
Which MySQL Datatype to use for storing boolean values?什麼是在MySQL中存儲布爾值的數據類型?
我是一個.NET程序員,使用MySQL數據庫在我生命中的第一次。
我想存儲布爾值,MySQL有BIT
,但此數據類型的.NET轉換爲UINT64
。
還有另一種數據類型TINYINT(1)
,其.NET相當於System.Boolean
這將符合我的目的。
但我爲什麼會用TINYINT(1)
(可存儲123一樣,22的值),而不是BIT
和將採取更多的空間比BIT
也(我猜)?使用它可能是合法的,但我不認爲它是符合邏輯的。
有人能幫助並澄清我的疑問嗎?
你是什麼「的.NET轉換」是什麼意思?你如何將你的db值轉換成.net類型?如果你手動轉換,你不能使用:Convert.ToBoolean(reader [「columnName」])這應該將BIT值轉換爲布爾值沒有問題。 – coalvilledave 2011-05-13 07:54:13
如果您正在使用DataReader並執行上述轉換,那麼它工作正常。 但如果你起訴DataTable並嘗試做轉換,那麼它不起作用。 – 2011-05-13 09:56:38