sql >> Databasteknik >  >> RDS >> Oracle

Boolean Field i Oracle

Jag tyckte att den här länken var användbar.

Här är stycket som lyfter fram några av fördelarna/nackdelarna med varje tillvägagångssätt.

Den vanligaste designen är att imitera de många booleska-liknande flaggorna som Oracles datalexikon använder, genom att välja "Y" för sant och "N" för falskt. Men för att interagera korrekt med värdmiljöer, såsom JDBC, OCCI och andra programmeringsmiljöer, är det bättre att välja 0 för falskt och 1 för sant så att det kan fungera korrekt med funktionerna getBoolean och setBoolean.

I grund och botten förespråkar de metod nummer 2, för effektivitetens skull, med

  • värden av 0/1 (på grund av interoperabilitet med JDBC:s getBoolean() etc.) med en kontrollbegränsning
  • en typ av CHAR (eftersom den använder mindre utrymme än NUMBER).

Deras exempel:

create table tbool (bool char check (bool in (0,1));
insert into tbool values(0);
insert into tbool values(1);`


  1. Hur pivoterar man okänt antal kolumner och inget aggregat i SQL Server?

  2. Finns det ett PL/SQL-pragma som liknar DETERMINISTIC, men för omfattningen av en enda SQL SELECT?

  3. Hur man installerar SQL Developer på en Mac

  4. SQL Server Clustering från ett Oracle RAC-perspektiv