[pgsql-jp: 29665] データが取り込めない

JOKER currency @ lily.freemail.ne.jp
2003年 4月 18日 (金) 16:26:54 JST


初めまして。
PostgreSQL7.3.2を
使用しております。
症状:テーブルにデータを取り込めない

操作:
データベースクラスタをエンコードEUC_JPにて初期化(initdb -E EUC_JP)
データベーススーパーユーザーにてaddressという名のデータベースを
作成(createdb -E EUC_JP address)

       List of databases
    Name     | Owner | Encoding
-------------+-------+----------
 address     | pgsql | EUC_JP
 template0   | pgsql | EUC_JP
 template1   | pgsql | EUC_JP
(3 rows)


その後データベースユーザwwwを登録
ユーザー名www
新規ユーザー作成権限:無し
新規データベース作成権限:無し

ユーザー名wwwにてデータベースに接続、テーブル名customerを作成

         List of relations
 Schema |   Name    | Type  | Owner
--------+-----------+-------+-------
 public | customer  | table | www

(テーブル構造)
       Table "public.customer"
    Column     |  Type   | Modifiers
---------------+---------+-----------
 name          | text    | not null
 furigana      | text    |
 postalcode    | text    | not null
 address1      | text    | not null
 address2      | text    |
 address3      | text    |
 telephone     | integer | not null
 fax           | integer |
 email         | text    |

インポートしたいデータをテキストで用意(漢字コードはEUCに設定)
カラム区切りは\t(タブ)。ファイル名はcustomer.txt

(内容)
小泉純一郎(\t)koizumi(\t)100-0001(\t)東京都(\t)千代田区神田1−1
(\t)(\t)0332145687(\t)(\t)koizumi @ kantei.go.jp(\n)
.
.
.
(以下約2万タプル(レコード))
NOT NULL属性カラムは空欄の場合があります。


この後、
\copy customer from customer.txt
を実行すると
WARNING:  copy: line XX, pg_atoi: zero-length string

ERROR:  copy: line XX, pg_atoi: error reading "": No buffer space
available
lost synchronization with server, resetting connection

と出ます。
該当するXX行目を見ましたが、空のカラムはあるものの、カラムの過不足は
有りませんでした

もしかしてinteger属性のカラムは空欄にしておいてはいけないのでしょうか?

以前のバージョン(7.2.3)ではこのようなことはありませんでした。

この辺りの仕様は変わったのでしょうか?


-- 
JOKER <currency @ lily.freemail.ne.jp>





pgsql-jp メーリングリストの案内