最終的にやりたいこと
・MySQL5.7に真偽値を格納したい

知りたいこと
・boolean型、bit(1)型、tinyint(1)型の何れが良い?


Q1.boolean リテラルについて
TRUE および FALSE 定数はそれぞれ 1 と 0 として評価される、と書かれていますが、これはどのようなデータ型に対しても当てはまるのでしょうか?
・例えば、tinyint(1)型に格納された1だけではなく、bit(1)型に格納された1に対しても、SELECTする際「where フィールド名 = true」は成立する?


Q2.boolean型は、tinyint(1)型と完全に同一?
・boolean型でフィールド作成するとtinyint(1)型で作成されるのですが、これは、最初からtinyint(1)型を指定して作成したフィールト内容と全く同じということを意味するのでしょうか?


Q3.boolean型は、どうしてbit(1)型ではない?
・tinyint(1)型だと01以外も格納されることが有り得るので、0と1しか格納できないbit(1)型の方が、より適切と思うのですが…
・boolean型を、tinyint(1)型として処理するような仕様になっているのは、何か理由があるのでしょうか?