• ベストアンサー

ORACLE DBへ初期化していない領域のレコードを

ORACLE DBへ初期化していない領域のレコードを INSERTで追加した場合、どのような値のデータ(文字コード)が 格納されるのでしょうか?

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

  • ベストアンサー
回答No.1

オラクルは、受け取ったデータを登録するだけですので、どのような値になるかは、登録する側次第です。 コンパイル時点のメモリ上のゴミだったり、実行時のメモリ上のゴミだったりすると思いますよ。

hakuba777
質問者

補足

レスありがとうございます。 だいたい理解できました。でも、そのゴミが not null制約がある列に登録できるのですが、 これは、どのように解釈すれば良いのでしょうか? null以外のデータと解釈されるのでしょうか? また、それら登録されてしまったゴミのデータは、 oracleでは、nullとして扱われるのでしょうか?

その他の回答 (2)

  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.3

2の方の通りで、項目のデフォルト値が設定されます。デフォルト値を指定していない場合にはnullになります。 1の方のゴミは入りませんので、お間違えの無いように。

  • 3rd_001
  • ベストアンサー率66% (115/174)
回答No.2

これは、たとえば5つの項目があるテーブルに対してInset時に4つしか項目指定をしていないでもデータが入ってしまう。指定をしていない項目になにが入るのかということでしょうか。 また、その1項目にはNotNull制約が付いているのでInsertできないはずなのでInsertできてしまう、とういことですか? 項目を指定しないなら、通常はNullが入ります。デフォルト値を設定していれば、そのデフォルト値が入ります。ですので、その項目にはデフォルト値が設定されていて、デフォルト値が入っているのではないでしょうか。 検証可能な情報をご提示ください。

関連するQ&A