0

他の DBMS からエクスポートされた CLOB および BLOB オブジェクトを PostgreSQL にインポートする必要があります。このような LOB は、パス参照が CSV ファイルに配置された別個のファイルです。テーブルの構造は (id int PK, clobcol text) です。構造の例を次に示します。

  • データ.csv

    1|some_clob.dat
    2|some_clob.dat
    
  • 構成ファイル: pgloader.conf

    [pgsql]
    host = localhost
    port = 5432
    base = test
    user = some_user
    pass = 
    
    log_file            = d:/tmp/pgloader.log
    log_min_messages    = DEBUG
    client_min_messages = WARNING
    lc_messages         = C
    
    client_encoding = 'utf-8'
    copy_every      = 5
    commit_every    = 5
    #copy_delimiter  = %
    
    null         = ""
    empty_string = "\ "
    
    [clob]
    table           = clob_table
    format          = text
    filename        = D:/pgloader-2.3.2/test/data.csv
    field_sep       = |
    quotechar       = "
    columns         = id:1, clobcol:2
    index           = id:1
    blob_columns    = clobcol:2:ifx_clob
    

そのインポートのために、PGloader ツール (Python スクリプト、私は Windows BTW を使用しています) を使用することにしました。しかし、私が実行すると:

pgloader.py -c pgloader.conf

ログファイルに次のエラーが表示されます。

Warning: column 'clobcol' is not a valid blob reference: d:/pgloader-2.3.2/test/clob.out
need more than 1 value to unpack

COPY error on lines 1

レコードは次の形式でデータベースに登録されます: (id: 1, clobcol: 'some_clob.dat')。何が問題なのか、それを修正する方法がわかりません。何か提案はありますか?ありがとうございました

よろしく

4

1 に答える 1

0

解決済み: コピーする CLOB データの範囲が欠落しています。例えば:

    1|0,25,some_clob.dat
于 2012-07-16T12:56:20.087 に答える