5丁目通信(仮称)

とある5丁目で活動する還暦間近のWebプログラマーの覚え書きです。それとかかってくる迷惑電話や、家業のアパート経営について。

PostgreSQL カラムサイズが増やせないので、いろいろ調べたら何とかなった話し


ずっと昔に開発した配信のシステム。お客様から、大きなテキストが入力できないと連絡があった。

調べてみると、DB上のテーブル項目の文字サイズが小さい。そこでカラムサイズを増やすことに。

alter table ir_calendar alter text_col type character(256);

としたところ、エラーになる。

なんと、動いているPostgreSQLのバージョンが、7.4であった。このSQLは8.0でないと動かない。

そこで、次のように新しいカラムを追加して、そのカラムをしてから、今までのカラムを削除して、元に戻すといった面倒なことを行いました。(こちらを参考にしたサイトがわからなくなった)

ALTER TABLE ir_calendar ADD COLUMN new_text_col  character(256);
UPDATE ir_calendar SET new_text_col  = CAST(text_col AS character(256));
ALTER TABLE ir_calendar DROP COLUMN text_col ;
ALTER TABLE ir_calendar RENAME COLUMN new_text_col  TO text_col ;

以上で無事に大きなテキストが入力できるようになりした。

結局の所、最初の仕様の見積りミスですね。反省。

ブログランキング・にほんブログ村へ 人気ブログランキング

%d人のブロガーが「いいね」をつけました。