• ベストアンサー

テーブルのカラム(列)を追加したい

お世話になります、 DBはOracle8iです。 一度作成して、データが入っているテーブルAの カラム(列)をデータをそのままにして追加できるの でしょうか? 追加前のデータにデフォルト値を与えることはできるのでしょうか? [変更前] 名前 年齢 性別 あ   1  男 い   2  女 う   3  男 ↓カラム追加 [変更後] 名前 年齢 性別 フラグ あ   1  男   0 い   2  女   0 う   3  男   0  以上のような感じにしたいのですが、 Alter table文を使うところまではわかっているのですが。。。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.2

ALTER TABLE テーブル名 ADD( フィールド名 NUMBER(10) ); 見たいな感じですね。 既存のレコードの値は、後からupdate文で入れることになります。 といっても update テーブル名 set 追加フィールド名 = 値; でおしまいですけど。

takataka111
質問者

お礼

ありがとうございます。 これを参考に作ってみようと思います。 勉強します。

その他の回答 (2)

  • BlueRay
  • ベストアンサー率45% (204/453)
回答No.3

すいません。サンプルです。 テーブル名:TBL_HOGE ALTER TABLE TBL_HOGE ADD (FLG VARCHAR2(1)) です。頑張ってください。

takataka111
質問者

お礼

サンプルまで作っていただいてありがとうございます。 勉強します。

  • BlueRay
  • ベストアンサー率45% (204/453)
回答No.1

以下のようにしてください。 ○テーブルにカラムを追加する場合   ALTER TABLE テーブル名 ADD (カラム名 カラム定義) オマケで、削除・変更も書いておきます。 ○テーブルのカラムを削除する場合   ALTER TABLE テーブル名 DROP { COLUMN カラム名 | (カラム名[, ... ]) } ○テーブルのカラム定義を変更する場合   ALTER TABLE テーブル名 MODIFY (カラム名 カラム定義)

関連するQ&A