問題ID:13697について

  • フォーラムは新サイトへ移行しました。
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2021-2-14 17:25
yuyayamamoto  新米   投稿数: 4
お世話になっております。

問題ID:13697の問題について質問です。

NOT NULL制約は表が空の場合に追加ができると白本ではあったのですが、この問題ではADDができないとあります。

本当にADDはできないのでしょうか?
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2021-2-15 10:00
quensan  長老   投稿数: 119
白本にはADDでNOT NULL制約を追加している実行例は載っていましたか?
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2021-2-15 11:23
yuyayamamoto  新米   投稿数: 4
実行例までは載っていませんでした。
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2021-2-16 9:20
quensan  長老   投稿数: 119
試してみましたが、13697のようにNOT NULLはMODIFYでしか追加できないようです。

SQL> desc t1
名前 NULL? 型
----------------------------------------- -------- ----------------------------
A VARCHAR2(10)
B NUMBER(2)

SQL> alter table t1 add constraint con1 not null(b);
alter table t1 add constraint con1 not null(b)
*
行1でエラーが発生しました。:
ORA-00904: : 無効な識別子です。


SQL> alter table t1 modify b constraint con1 not null;

表が変更されました。

SQL> desc t1
名前 NULL? 型
----------------------------------------- -------- ----------------------------
A VARCHAR2(10)
B NOT NULL NUMBER(2)
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2021-2-16 14:16
yuyayamamoto  新米   投稿数: 4
そうなのですね。
試していただきありがとうございます。

MODIFYでのみ追加できるというように意識しておきます。

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.