Відповіді:
Еквівалент - BITполе.
У SQLвикористанні 0та 1для встановлення бітового поля (подібно до поля "так / ні" в Access). У студії управління воно відображається як хибне / справжнє значення (принаймні, в останніх версіях).
При доступі до бази даних через ASP.NET це поле буде виставляти поле як булеве значення.
Тип BITданих зазвичай використовується для зберігання booleanзначень ( 0for false, 1for true).
BITзазначено в стандарті SQL? Мені важко це знайти. Найближчий я міг побачити - "булівський тип".
Можна використовувати bitтип стовпця.
Можна використовувати тип даних bit
Введені значення, що перевищують 0, зберігатимуться як "1"
Введені значення, менші за 0, зберігатимуться як "1"
Значення, вставлені як "0", зберігатимуться як "0"
Це справедливо для MS SQL Server 2012 Express
0помилково, будь-яке не 0число є істинним. Також загальним для -1 було значення за замовчуванням для true, оскільки в підписаному двійковому файлі він має кожен біт, встановлений на 1. Сьогодні дуже часто бачити 1 як значення за замовчуванням для істинного (лише найменш значущий встановлений біт).
Вже є відповіді, що говорять про використання Біта. До цих відповідей я додам більше.
Ви повинні використовувати біт для представлення булевих значень.
Зауваження зі статті MSDN.
Біт може приймати значення 1, 0 або NULL.
Система баз даних SQL Server оптимізує зберігання бітових стовпців. Якщо у таблиці є 8 або менше бітових стовпців, стовпці зберігаються як 1 байт. Якщо є від 9 до 16 бітових стовпців, стовпці зберігаються як 2 байти тощо.
Значення рядків TRUE і FALSE можуть бути перетворені в бітові значення: TRUE перетворюється в 1, а FALSE перетворюється в 0.
Перетворення в біт сприяє будь-якому ненульовому значенню до 1.
NOT NULLЯк біт мають значення 1, 0 і NULL. Дивіться для цього таблицю істинності. Тому плануйте значення відповідно. Це може додати плутанину, дозволяючи значення NULL для типу бітових даних.
bitбуде найпростішим, а також займе найменше місця. Не дуже багатослівний у порівнянні з "Y / N", але я добре з цим.
bitє найбільш підходящим варіантом. Інакше я колись використовував intдля цієї мети. 1за true& 0для false.
У студії управління SQL Server будь-якої версії використовувати
BITяк тип даних
який надасть вам параметри Trueабо Falseзначення. у випадку, якщо ви хочете використовувати лише 1або 0тоді ви можете використовувати цей метод:
CREATE TABLE SampleBit(
bar int NOT NULL CONSTRAINT CK_foo_bar CHECK (bar IN (-1, 0, 1))
)
Але я буду строго радити BITяк найкращий варіант. Сподіваюсь, що це допоможе комусь.