Nov 18
PostgreSQLメモ
rhaco2をPostgreSQL8.3で使えるように色々調べていくうちに学んだメモ。
- insert時に「デフォルト値を入れる」だけの処理をしたい場合
insert into テーブル名 default value;
でOK
- integerのカラムとかにlikeを適用したい場合
select * from テーブル名 where id::text like '%abc%';
のようにカラムをテキストにキャストする。
- MySQLのvarcharをselectする時はデフォルトignore case。ついでにtrimも勝手にかける?らしい
- Mysqlで使えるshow columnは無いが、information_schemaの情報をselectすることで同じようなことが出来る
ただし、create table時にserialで指定してもinformation_schema.columnsから取得できるカラム情報はinteger(int4)のみ。なのでserialと判定するにはカラムがintegerであり、かつデフォルト値としてnextvalが指定されていることなど、複合的にチェックする必要がある。