5

Export > Copy (代わりに Copy > SQL が必要です) を使用して、PHPPgadmin で PostgreSQL バックアップを作成しました。

ファイルには次のようなエントリが含まれています。

COPY tablename(id, field) FROM stdin;
...

このファイルを SQL 形式に変換するにはどうすればよいですか?

INSERT INTO tablename...

Pgadmin を使用して、execute SQL コマンドを使用してこのファイルをインポートしたいと考えています。

4

4 に答える 4

3

それを SQL 形式に変換することはできません (少なくとも直接的ではありません)。

再エクスポートできない場合、より簡単なオプションはphpPgadminをバイパスし、サーバーにログインして次のようなものを実行することです

cat [yourdump.sql]  | psql [your connections args]

サーバーへのシェル アクセスがない場合は、(SFTP または FTP 経由で) ファイルをアップロードし、phpPgAdmin を使用してロードしてみてください"COPY <table> FROM <path_to_file_on_server>"。ただし、テーブルが多数ある場合は、ファイルを分割して、一度に 1 つずつ実行する必要があります (私は信じています)。

http://phppgadmin.sourceforge.net/?page=faq

于 2010-05-13T16:31:22.923 に答える
2

PostgreSQL 9.3 以降で利用可能なCOPY FROM PROGRAM構文を試すことができます。

例えば: COPY tbl_customers (id, address_id, insurance_id, fullname, secret_code ...) FROM PROGRAM 'echo "1 2 \N Ivan Ivanov 42 ..."'

于 2015-05-26T16:12:34.840 に答える