sql >> Databasteknik >  >> RDS >> Mysql

Sant/falskt vs 0/1 i MySQL

Vissa "gränssnitt", med alternativet "Använd Booleans" aktiverat, kommer att behandla alla TINYINT(1)-kolumner som booleska och vice versa.

Detta gör att du i applikationen kan använda TRUE och FALSE istället för 1 och 0.

Detta påverkar inte databasen alls, eftersom den är implementerad i applikationen.

Det finns egentligen ingen BOOLEAN skriv in MySQL. BOOLEAN är bara en synonym för TINYINT(1), och TRUE och FALSE är synonymer för 1 och 0.

Om konverteringen görs i kompilatorn blir det ingen skillnad i prestanda i applikationen. Annars kommer skillnaden fortfarande inte att märkas.

Du bör använda vilken metod som helst som tillåter dig att koda mer effektivt, men att inte använda funktionen kan minska beroendet av den specifika "gränssnitts"-leverantören.



  1. Spara byte[] i en SQL Server-databas från C#

  2. Hur man kör lagrad procedur från Laravel

  3. LOAD_FILE returnerar NULL

  4. ini_set, set_time_limit, (max_execution_time) - fungerar inte