sql >> Databasteknik >  >> RDS >> Mysql

Laravel 4.2 BIT datatypproblem

Har bit typfält betyder att du måste använda råvärden som en lösning när du infogar/uppdaterar det fältet.

Det beror på att PDO som standard binder dessa värden och de kommer att behandlas som strängar, alltså bit kommer att resultera i 1 :

DB::table('table')->insert(['bit_field' => 0]); // inserts 1
DB::table('table')->insert(['bit_field' => DB::raw(0)]); // inserts 0

Och jag föreslår att du ändrar den till tinyint om du kunde.




  1. Skriva rekursiv CTE med Entity Framework Fluent syntax eller Inline-syntax

  2. hämta base64-bilder från databasen

  3. Begränsa värdet på en MySQL-datatyp till ett specifikt intervall (helst inte ENUM)

  4. Ställer in Django/MySQL-webbplatsen för att använda UTF-8