[PHP-users 5073] Re: 改行コードに関する質問
Seto
php-users@php.gr.jp
Tue, 29 Jan 2002 17:02:06 +0900
Setoです。
>tyuu です。
cut
>以下のようにして作成された table と改行の入った値を
>pg_dump と psql を利用してrestore できますよ。
># できないのかと思って調べてしまった。
>-----------------8<------------------------------
>CREATE SEQUENCE test_key_seq;
>CREATE TABLE test (
> key INTEGER DEFAULT nextval('test_key_seq'),
> value TEXT,
> PRIMARY KEY( key )
>);
>CREATE UNIQUE INDEX foo_key_seq on test( key );
>
>INSERT INTO test(value) VALUES ( 'abc
>def' );
>INSERT INTO test(value) VALUES ( 'ghi
>jkl' );
>----------------->8------------------------------
># pg_dump [DB_NAME] > hoge
># psql [DB_NAME] -f hoge
># psql [DB_NAME]
>select * from test;
上記のようにテーブル定義にINSERTでデータ定義しているだけなら
データの内容は不変ですけど、Web経由でdata入力したものは
そうはなりません。
pg_dumpしてみると
CREATE TABLE ・・・
COPY "xxxx" FROM stdin;
data1-fld1 data1-fld2 data1-fld3
data2-fld1 data2-fdl2 data2-fld3
・・・
\.
となります。
たとえばdata1-fld3に改行コードが入っていると
COPY "xxxx" FROM stdin;
data1-fld1 data1-fld2 data1-
fld3
data2-fld1 data1-fld2 data2-fld3
・・・
\.
となり失敗します。
***************************************
Junya Seto
http://www.cii.gr.jp/~seto/mkWeb.html
***************************************