プロが教える店舗&オフィスのセキュリティ対策術

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

A 回答 (3件)

オラクルは、受け取ったデータを登録するだけですので、どのような値になるかは、登録する側次第です。


コンパイル時点のメモリ上のゴミだったり、実行時のメモリ上のゴミだったりすると思いますよ。

この回答への補足

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

補足日時:2010/09/01 23:24
    • good
    • 0

2の方の通りで、項目のデフォルト値が設定されます。

デフォルト値を指定していない場合にはnullになります。
1の方のゴミは入りませんので、お間違えの無いように。
    • good
    • 0

これは、たとえば5つの項目があるテーブルに対してInset時に4つしか項目指定をしていないでもデータが入ってしまう。

指定をしていない項目になにが入るのかということでしょうか。

また、その1項目にはNotNull制約が付いているのでInsertできないはずなのでInsertできてしまう、とういことですか?

項目を指定しないなら、通常はNullが入ります。デフォルト値を設定していれば、そのデフォルト値が入ります。ですので、その項目にはデフォルト値が設定されていて、デフォルト値が入っているのではないでしょうか。

検証可能な情報をご提示ください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す