MySQL,MariaDB,Nodejsでboolean型を扱う時にはまったこと

IT, 開発

MySQL,MariaDBにはboolean型が無いみたいで、
以下の記事でbooleanを使うならbit(1)を使うといいと解説してあります。


しかし…
いざejsなどで値を参照すると、まじもんのbit(1)が入っているので表示できなかったり、分岐などで利用する場合、
毎回 true or false に成形しなおす必要があります。
当たり前なんですが、面倒です。

先人のいい記事がありました。
MySQLにつなぎに行くときにtypeCastにbitだった場合、true or false変換するfunctionを定義しておくことでbit(1)であることを気にせず取得した値をboolean型のように扱えます。
https://www.bennadel.com/blog/3188-casting-bit-fields-to-booleans-using-the-node-js-mysql-driver.htm
解決しました。
bit(1)ではなく、true or falseで取り出すことができます。

呼び出し側はこんな感じ

 

IT, 開発