[pgsql-jp: 26595] Re: Oracle への移行
KUBO Takehiro
kubo @ jiubao.org
2002年 7月 7日 (日) 09:07:26 JST
久保@茅ヶ崎市です。
Mikage Sawatari <mikage @ mikage.to> writes:
> > PostgreSQL7.1を使用しています。
> > DBの中の一部のテーブルをOracle8.1.7に移行したいのですが、
> > 現在この方法で行うと、主キーのところに、元はnullはないのに
> > import側で、nullになってしまいます。
どのようなデータが NULL になったのが例を出したほうが良いのでは。
これだけの情報では、よほど周知されていることでないかぎり、だれもわ
からないのではないかと思う。
> > Exportに問題があるのでしょうか?それともimport側なのか
> > わかりません。
>
> NULLになるのはVARCHAR型でしょうか?
>
> Oracle8.x では,'' (空文字列) と NULL は同値です.
> ですので,もしデータ中に空文字列が含まれるのであれば,
> NULL になるのが正常かと思います.
もしも主キーに空文字を使ってたら、動きとしては正常ですが、テーブル
設計は変なような。
> % ちなみに,Oracle9i で '' と NULL が同値でなくなったようです.
> % (ANSI準拠ということらしい)
最新版の Oracle9i Database Release 2 でも、'' と NULL が同値なのは
変わってないようです。
"Oracle9i SQL Reference Release 2 (9.2)"より引用:
http://technet.oracle.com/docs/products/oracle9i/doc_library/release2/server.920/a96540/sql_elements5a.htm
Oracle currently treats a character value with a length of zero
as null. However, this may not continue to be true in future
releases, and Oracle recommends that you do not treat empty
strings the same as nulls.
# この文言、Oracle 7.3 から変わってないような気がする....。
では、再見
--
神奈川県茅ヶ崎市在住 久保 健洋
email: kubo @ jiubao.org
web: http://www.jiubao.org
GnuPG fingerprint = 5F7B C8EF CA16 57D0 FDE1 9F47 C001 1F93 AC08 2262
pgsql-jp メーリングリストの案内