Mysql
 sql >> Base de données >  >> RDS >> Mysql

Problème de type de données Laravel 4.2 BIT

Avoir bit champ de type signifie que vous devez utiliser des valeurs brutes comme solution de contournement chaque fois que vous insérez/mettez à jour ce champ.

C'est parce que PDO par défaut liera ces valeurs et elles seront traitées comme des chaînes, donc bit donnera 1 :

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

Et je suggère de le changer en tinyint si vous pouviez.