Hoe maak je een JA / NEE BOOLEAN-veld in SQL Server?

Wat is de beste praktijk voor het maken van een yes/noIE BooleanVELD bij het converteren vanuit een access databaseof in het algemeen?


Antwoord 1, Autoriteit 100%

Het equivalent is een BITFIELD.

In SQLU gebruikt 0en 1om een ​​bitveld in te stellen (net als een ja / nee veld in toegang). In Management Studio toont het als een valse / echte waarde (althans in recente versies).

Bij toegang tot de database via ASP.NET zal het het veld blootstellen als een Booleaanse waarde.


Antwoord 2, Autoriteit 25%

De BITDataType wordt over het algemeen gebruikt om BooleanWaarden (0voor false, 1voor true).


Antwoord 3, Autoriteit 5%

U kunt de BITkolomtype gebruiken.


Antwoord 4, Autoriteit 5%

U kunt de BIT-veld gebruiken.

Voor het toevoegen van een bit-kolom aan een bestaande tabel, zou de SQL-opdracht eruit zien:

ALTER TABLE table_name ADD yes_no BIT

Als u een nieuwe tabel wilt maken, kunt u doen: CREATE TABLE table_name (yes_no BIT).


Antwoord 5, Autoriteit 4%

U kunt het gegevenstype BIT

gebruiken

Waarden ingevoegd die groter zijn dan 0 worden opgeslagen als ‘1’

Waarden ingevoegd die minder dan 0 zijn, worden opgeslagen als ‘1’

Waarden ingevoegd als ‘0’ worden opgeslagen als ‘0’

Dit geldt voor MS SQL Server 2012 Express


Antwoord 6, Autoriteit 4%

Er zijn al antwoorden met het gebruik van bit. Ik zal meer toevoegen aan deze antwoorden.

U moet bit gebruiken voor het vertegenwoordigen van Boolean-waarden.

Opmerkingen van MSDN-artikel.

Bit kan een waarde van 1, 0 of NULL hebben.

De SQL Server Database Engine optimaliseert de opslag van bitkolommen. Indien
er zijn 8 of minder bitkolommen in een tabel, de kolommen worden opgeslagen als
1 byte. Als er 9 tot 16 bit kolommen zijn, zijn de kolommen:
opgeslagen als 2 bytes, enzovoort.

De tekenreekswaarden TRUE en FALSE kunnen worden geconverteerd naar bitwaarden: TRUE
wordt geconverteerd naar 1 en ONWAAR wordt geconverteerd naar 0.

Converteren naar bit bevordert elke waarde die niet nul is tot 1.

Referentie

Opmerking: het is een goede gewoonte om alleen waarden als 1 en 0 te behouden met gegevenstype NOT NULL

As Bit hebben waarden 1, 0 en NULL. Zie hiervoor waarheidstabel. Dus plan waarden dienovereenkomstig. Het kan verwarring veroorzaken door de NULL-waarde toe te staan voor het bitgegevenstype.

Referentie


Antwoord 7, autoriteit 3%

Voorbeeld van gebruik tijdens het maken van een tabel:

[ColumnName]     BIT   NULL   DEFAULT 0

Antwoord 8, autoriteit 3%

U kunt het veld BIT

. gebruiken

Een nieuwe tabel maken:

CREATE TABLE Tb_Table1
(
ID              INT,
BitColumn       BIT DEFAULT 1
)

Kolom toevoegen aan bestaande tabel:

ALTER TABLE Tb_Table1 ADD BitColumn  BIT DEFAULT 1

om record in te voegen:

INSERT Tb_Table1 VALUES(11,0)

Antwoord 9, Autoriteit 2%

BITZal de eenvoudigste en neemt ook de minste ruimte in beslag. Niet erg uitgebreid in vergelijking met “y / n” maar het gaat er goed met.


Antwoord 10

BITis de meest geschikte optie. Anders heb ik ooit intvoor dat doel gebruikt. 1VOOR true& AMP; 0voor false.


Antwoord 11

Gebruik in SQL Server Management Studio van elke versie, gebruik BITals gegevenstype

die u verstrekken met trueof falsewaardeopties. Als u alleen 1of 0wilt gebruiken, kunt u deze methode gebruiken:

CREATE TABLE SampleBit(
    bar int NOT NULL CONSTRAINT CK_foo_bar CHECK (bar IN (-1, 0, 1))
)

Maar ik zal het strikt adviseren BITals de beste optie. Hoop volledig het is iemand.

Other episodes