Laravel 4.2 BIT数据类型问题
bit(1)
数据库表中有一个类型列。但它没有按我预期的那样工作。
$invitee = new Invitee();$invitee->name = "name1";
$invitee->email = "example@mail.com";
$invitee->isActive = 0; // "b'0'", '0', false, are also not working
$invitee->save();
我需要0
在isActive
列中放入零,但1
每次尝试添加带有的记录时,它的价值都会增加0
。
我在这里发现了一个问题。。但是答案并没有说明问题的原因。很高兴有人可以解释这个问题。
回答:
具有bit
类型字段意味着您每次插入/更新该字段时都需要使用原始值作为解决方法。
这是因为默认情况下,PDO将绑定这些值,并将它们视为字符串,因此bit
将导致1
:
DB::table('table')->insert(['bit_field' => 0]); // inserts 1DB::table('table')->insert(['bit_field' => DB::raw(0)]); // inserts 0
我建议将其更改为tinyint
您可以的范围。
以上是 Laravel 4.2 BIT数据类型问题 的全部内容, 来源链接: utcz.com/qa/403294.html