メインコンテンツへスキップ
MySQL にはブール型がありません。BOOL は TINYINT(1) の別名で、1 と同じように 5 や -1 も受け付け、そのまま返します。vsql_boolean は、1 バイトで格納され、2 つの値だけを保持する STRICTBOOL カラム型を追加します。

インストール

インストールスクリプト、Docker イメージ、またはリリース tarball で VillageSQL をインストールした場合、vsql_boolean.veb はすでにサーバーの lib/veb/ ディレクトリにあります。1 つのステートメントでサーバーにインストールします。
インストールされたことを確認します。
自分でビルドするには、リポジトリのビルド手順に従ってください。

追加される機能

STRICTBOOL 型

STRICTBOOL カラムは、文字列 'true'/'false'、't'/'f'、'yes'/'no'、'on'/'off'、および '1'/'0' を、大文字と小文字を問わず受け付けます。文字列として渡してください。裸の数値は拒否されます。どの形式で入れても true または false として読み戻され、1 バイトを占有します。

関数

例

4 通りの書き方が入り、2 つの値が出てきました。数えてみます。
受け付けられる書き方以外のものは、挿入時に拒否されます。INSERT INTO flags VALUES (5, 'eps', 'maybe') は ERROR 1366 (HY000): Incorrect STRICTBOOL value: 'maybe' for column 'active' at row 1 で失敗します。引用符のない 1 も同様に、ERROR 3219 (HY000): Incorrect STRICTBOOL value: '1' for column 'active' at row 1 で失敗します。

関連項目