Jaka jest najlepsza praktyka tworzenia pola yes/no
ie Boolean
podczas konwertowania z access database
lub ogólnie?
sql-server
boolean
sqldatatypes
leora
źródło
źródło
Typ
BIT
danych jest zwykle używany do przechowywaniaboolean
wartości (0
forfalse
,1
fortrue
).źródło
BIT
określony w standardzie SQL? Trudno mi to znaleźć. Najbliższe jakie widziałem to „typ boolowski”.Możesz użyć
bit
typu kolumny.źródło
Możesz użyć
BIT
pola.Aby dodać kolumnę BIT do istniejącej tabeli, polecenie SQL wygląda następująco:
ALTER TABLE table_name ADD yes_no BIT
Jeśli chcesz utworzyć nową tabelę, można zrobić:
CREATE TABLE table_name (yes_no BIT)
.źródło
Możesz użyć typu danych
bit
Wstawione wartości większe niż 0 zostaną zapisane jako „1”
Wstawione wartości mniejsze niż 0 zostaną zapisane jako „1”
Wartości wstawione jako „0” zostaną zapisane jako „0”
Dotyczy to MS SQL Server 2012 Express
źródło
0
jest fałszem, każda0
liczba nie będąca liczbą jest prawdą. Często było również tak, że -1 jest domyślną wartością true, ponieważ w podpisanym pliku binarnym ma każdy bit ustawiony na 1. W dzisiejszych czasach bardzo często widzi się 1 jako domyślną wartość true (tylko najmniej znaczący zestaw bitów).Istnieją już odpowiedzi mówiące o użyciu bitu. Dodam więcej do tych odpowiedzi.
Należy użyć bitu do reprezentowania wartości logicznych.
Uwagi z artykułu MSDN.
Uwaga: Dobrą praktyką jest utrzymywanie wartości jako 1 i 0 tylko dla typu danych
NOT NULL
Ponieważ Bit ma wartości 1, 0 i NULL. Zobacz tabelę prawdy. Więc odpowiednio zaplanuj wartości. Może to powodować zamieszanie, dopuszczając wartość NULL dla typu danych bitowych.
źródło
Przykładowe użycie podczas tworzenia tabeli:
źródło
Możesz użyć
BIT
polaAby utworzyć nową tabelę:
Dodawanie kolumny w istniejącej tabeli:
Aby wstawić rekord:
źródło
bit
będą najprostsze i zajmą najmniej miejsca. Niezbyt gadatliwy w porównaniu do „T / N”, ale nie mam nic przeciwko.źródło
bit
jest najbardziej odpowiednią opcją. W przeciwnym razie kiedyś użyłemint
do tego celu.1
dlatrue
i0
dlafalse
.źródło
który zapewni Ci opcje
True
lubFalse
wartość. jeśli chcesz użyć Tylko1
lub0
możesz użyć tej metody:Ale będę ściśle doradzać
BIT
jako NAJLEPSZĄ opcję. Mam nadzieję, że to w pełni pomoże komuś.źródło