• ベストアンサー

フィールドをデフォルト0にする

フィールドをデフォルト0にする方法が知りたいです。 以下のようなサンプルがります。 drop table test_a; create table test_a ( name varchar2(10), a number(1), b number(1), c number(1) ) insert into test_a (name) values ('AAA'); insert into test_a (name,a) values ('BBB', NULL); insert into test_a (name,a,b) values ('CCC', NULL,NULL); select * from test_a; この状態では、a,b,cはNULLですが、a,b,cの値をデフォルト値で0にしたい為、 update test_a set a = 0, b = 0, c = 0; として、データを直して、次回から insert into test_a (name) values ('DDD'); とすると、nameがDDDの時もa,b,cが0となるようにテーブル定義を変えたいのですが 既存のテーブルをそのままで、途中から変更する方法が知りたいです。

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

  • ベストアンサー
  • trictrac
  • ベストアンサー率38% (10/26)
回答No.1

alter table testa modify ( a number(1) default 0 , b number(1) default 0 , c number(1) default 0 ) と、カラムのデフォルト値を定義してあげれば、 良いのではないでしょうか。

その他の回答 (1)

  • SUPER-NEO
  • ベストアンサー率38% (706/1857)
回答No.2

こんにちは。 ALTER TABLE 文でテーブルの構造を変更することができます。