Відповіді:
Еквівалент - BIT
поле.
У SQL
використанні 0
та 1
для встановлення бітового поля (подібно до поля "так / ні" в Access). У студії управління воно відображається як хибне / справжнє значення (принаймні, в останніх версіях).
При доступі до бази даних через ASP.NET це поле буде виставляти поле як булеве значення.
Тип BIT
даних зазвичай використовується для зберігання boolean
значень ( 0
for false
, 1
for 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
як найкращий варіант. Сподіваюсь, що це допоможе комусь.