PostgreSQL
について
| boolean型のFieldとtext テーブルの作成 | |
beniya=# create table dmk1( a text, b boolean);
CREATE
beniya=# select \d dmk1;
Table "dmk1"
Column | Type | Modifiers
--------+---------+-----------
a | text |
b | boolean |
|
a: text b : boolean のテーブルを作る。 |
| beniya=# INSERT INTO dmk1 VALUES(
'ABC'); INSERT 22209 1 beniya=# select * from dmk1; a | b -----+--- ABC | (1 row) beniya=# INSERT INTO dmk1 VALUES( 'ABC','true'); INSERT 22210 1 beniya=# select * from dmk1; a | b -----+--- ABC | ABC | t (2 rows) beniya=# INSERT INTO dmk1 VALUES( 'def','false'); INSERT 22211 1 beniya=# select * from dmk1; a | b -----+--- ABC | ABC | t def | f (3 rows) |
単に 'ABC' だけをInsert してみる。 boolean b には何も入っていない。 次に 'ABC' と 'true' を入れてみる。 t となっている。 次は 'false' の検証 f となっている。 |
| NULLの明示的設定 | |
| beniya=# INSERT INTO dmk1 VALUES(
'hij','null'); ERROR: Bad boolean external representation 'null' beniya=# INSERT INTO dmk1 VALUES( 'hij',''); ERROR: Bad boolean external representation '' beniya=# INSERT INTO dmk1 VALUES( 'hij',NULL); INSERT 22212 1 beniya=# select * from dmk1; a | b -----+--- ABC | ABC | t def | f hij | (4 rows) |
NULL はどうするんだろう? 'null' ではダメ '' でもダメ NULL で OK (単に NULL でいいのだ。) これで明示的にも NULL を入れられる。 |
| beniya=# create table bool2(
a text,b boolean default 'TRUE'); CREATE beniya=# insert into bool2 values('1st time'); INSERT 22218 1 beniya=# insert into bool2 values('2st time','false'); INSERT 22219 1 beniya=# select * from bool2; a | b ----------+--- 1st time | t 2st time | f (2 rows) |
|
Last Update 2006/05/30 14:56 JST
| その他、お気づきの点がありましたら連絡先はこちらから |