¾�ΥС�������ʸ�� �� 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

COPY

̾��

COPY -- �ե�����ȥơ��֥�δ֤ǥǡ����򥳥ԡ�����

����

COPY tablename [ ( column [, ...] ) ]
    FROM { 'filename' | STDIN }
    [ [ WITH ] 
          [ BINARY ]
          [ OIDS ]
          [ DELIMITER [ AS ] 'delimiter' ]
          [ NULL [ AS ] 'null string' ]
          [ CSV [ HEADER ]
                [ QUOTE [ AS ] 'quote' ] 
                [ ESCAPE [ AS ] 'escape' ]
                [ FORCE NOT NULL column [, ...] ]

COPY tablename [ ( column [, ...] ) ]
    TO { 'filename' | STDOUT }
    [ [ WITH ] 
          [ BINARY ]
          [ HEADER ]
          [ OIDS ]
          [ DELIMITER [ AS ] 'delimiter' ]
          [ NULL [ AS ] 'null string' ]
          [ CSV [ HEADER ]
                [ QUOTE [ AS ] 'quote' ] 
                [ ESCAPE [ AS ] 'escape' ]
                [ FORCE QUOTE column [, ...] ]

����

COPY���ޥ�ɤϡ�PostgreSQL�Υơ��֥��ɸ��Υե����륷���ƥ�Υե�����֤ǥǡ������ư���ޤ��� COPY TO���ޥ�ɤϥơ��֥�����Ƥ�ե����������ԡ����ޤ��� �ޤ���COPY FROM���ޥ�ɤϡ��ե����������ơ��֥�ؤȥǡ����򥳥ԡ����ޤ��ʤ��λ������˥ơ��֥�ˤ���ǡ����˥��ԡ��������Ƥ��ɲä��ޤ��ˡ�

��Υꥹ�Ȥ����ꤵ��Ƥ����硢COPY�ϡ����ꤵ�줿��֤Υ��ԡ��Τߤ�Ԥ��ޤ��� ��ꥹ�Ȥ˴ޤޤ�Ƥ��ʤ��󤬥ơ��֥���ˤ����硢COPY FROM�ϡ���������˥ǥե���Ȥ��ͤ��������ޤ���

�ե�����̾�դ���COPY���ޥ�ɤϡ�PostgreSQL�����Ф��Ф���ľ�ܥե�����ؤ��ɤ߽񤭤򤹤�褦��̿���ޤ��� ���ꤷ���ե������ɬ�������Ф��饢�������Ǥ���ɬ�פ�����ޤ����ޤ����ե�����̾�ϥ����Ф��鸫���褦�˻��ꤵ��ʤ���Фʤ�ޤ��� STDIN��STDOUT�����ꤵ�줿��硢�ǡ����ϥ��饤����Ȥȥ����д֤�ή��ޤ���

�ѥ�᡼��

tablename

��¸�Υơ��֥��̾���Ǥ��ʥ������޽���̾��ġˡ�

column

���ԡ�������Υꥹ�ȤǤ������Υѥ�᡼���Ͼ�ά��ǽ�Ǥ��� ��Υꥹ�Ȥ����ꤵ��Ƥ��ʤ����ϡ����Ƥ��󤬻��Ѥ���ޤ���

filename

�����ϥե���������Хѥ�̾�Ǥ��� Windows�桼���ξ�硢�ѥ��ζ��ڤ�Ȥ��ƥ���å������Ѥ���ݤˤ���Ťˤ���ɬ�פ����뤫�⤷��ޤ���

STDIN

���Ϥ����饤����ȥ��ץꥱ������󤫤�Τ�ΤǤ��뤳�Ȥ���ꤷ�ޤ���

STDOUT

���Ϥ����饤����ȥ��ץꥱ�������ؤΤ�ΤǤ��뤳�Ȥ���ꤷ�ޤ���

BINARY

���ƤΥǡ�����ƥ����ȤǤϤʤ��Х��ʥ�������ɤ߽񤭤���褦�����ꤷ�ޤ��� �Х��ʥ�⡼�ɤǤ�DELIMITER��NULL��CSV���ץ�������ꤹ�뤳�ȤϤǤ��ޤ���

OIDS

�ƹԤ�OID�򥳥ԡ�����褦���ꤷ�ޤ� ��OID������ʤ��ơ��֥��OIDS����ꤹ��ȥ��顼��ȯ�����ޤ��ˡ�

delimiter

�ե�����γƹԡʥ饤��ˤ������ڤ�1ʸ���Ǥ��� �ǥե���Ȥϡ��ƥ����ȥ⡼�ɤǤϥ���ʸ����CSV�⡼�ɤǤϥ���ޤǤ���

null string

NULL�ͤ�ɽ��ʸ����Ǥ��� �ǥե���Ȥϡ��ƥ����ȥ⡼�ɤǤ�\N�ʥХå�����å���N�ˡ�CSV�⡼�ɤǤϰ�����Τʤ����ͤǤ��� ��������NULL�ͤȶ�ʸ�������̤���ɬ�פ��ʤ����ϡ��ƥ����ȥ⡼�ɤǤ��äƤ��ʸ�������Ѥ��������ɤ����⤷��ޤ���

����: COPY FROM�ξ�硢����ʸ����Ȱ��פ���ǡ������Ǥ�NULL�ͤȤ��Ƴ�Ǽ����ޤ��� COPY TO�¹Ի��˻��Ѥ���Ʊ��ʸ�������Ѥ��Ƥ��뤫�ɤ�����ǧ���Ƥ���������

CSV

����޶��ڤ��ѿ���CSV�˥⡼�ɤ����򤷤ޤ���

HEADER

�إå��Ԥ�ޤ�ե��������ꤷ�ޤ��� ���Υե�����ˤϳ����̾�������ܤ���Ƥ��ޤ��� ���ϤǤϡ���Ƭ�Ԥ˥ơ��֥����̾�����ꡢ���ϤǤ���Ƭ�Ԥ�̵�뤵��ޤ���

quote

CSV�ˤ�����������Ѥ�ʸ�������ꤷ�ޤ��� �ǥե���Ȥ���Ű�����Ǥ���

escape

CSV�⡼�ɤˤ�����ǡ���ʸ�������QUOTE�����˸����ʸ�������ꤷ�ޤ��� �ǥե���Ȥ�QUOTE���͡��̾����Ű�����ˤǤ���

FORCE QUOTE

CSV�⡼�ɤ�COPY TO�ˤ����ơ����ꤵ�줿������ˤ������Ƥ���NULL�ͤ���Ū�˰�����ǰϤߤޤ��� NULL���Ϥϰ�����ǰϤޤ�ޤ���

FORCE NOT NULL

CSV�⡼�ɤ�COPY FROM�ˤ����ơ����ꤵ�줿����������ǰϤޤ�Ƥ����ΤȤߤʤ���NULL�ͤϤʤ���ΤȤ��ƽ�������ޤ��� CSV�⡼�ɤΥǥե���Ȥ�NULLʸ�����''�ˤ�¸�ߤ����硢����ˤ���ͤ��ü�������ʸ����Ȥ������Ϥ���ޤ���

����

COPY���̾�Υơ��֥���Ф��ƤΤ߻��Ѥ��뤳�Ȥ��Ǥ��ޤ��� �ӥ塼���Ф��ƻ��Ѥ��뤳�ȤϤǤ��ޤ���

BINARY������ɤ���ꤹ��ȡ����ƤΥǡ�����ƥ����ȷ����ǤϤʤ����Х��ʥ�����Ȥ��ƽ񤭹���/�ɤ߹��ߤ�Ԥ��ޤ��� �̾�Υƥ����ȥ⡼�ɤ��¿��ư�®���ʤ�ޤ������Х��ʥ�����Υե�����ϡ��ۤʤ�ޥ��󥢡����ƥ������¾�ΥС�������PostgreSQL�Ǥϻ��ѤǤ��ޤ���

COPY TO�ξ����ͤ��ɤ߹���ơ��֥���Ф���SELECT���¤���COPY FROM�ξ����ͤ���������ơ��֥���Ф���INSERT���¤�ɬ�פǤ���

COPY���ޥ�ɤǻ��ꤹ��ե�����ϡ����饤����ȥ��ץꥱ�������ǤϤʤ��������Ф�ľ���ɤ߹���/�񤭹��ߤ�Ԥ��ޤ��� �������äơ������Υե�����ϡ����饤����ȤǤϤʤ����ǡ����١��������Хޥ�����¸�ߤ��뤫���ޤ��ϡ��ǡ����١��������Хޥ��󤫤饢��������ǽ�Ǥ���ɬ�פ�����ޤ��� ����ˡ����饤����ȤǤϤʤ���PostgreSQL�桼���ʥ����Ф�¹Ԥ��Ƥ���桼��ID�ˤ��������������¤��ɤ߽񤭸��¤���äƤ���ɬ�פ�����ޤ��� �ե�����̾����ꤷ��COPY���ޥ�ɤμ¹Ԥϡ��ǡ����١����Υ����ѡ��桼���Τߤ˵��Ĥ���Ƥ��ޤ������Υ��ޥ�ɤˤ�äơ������Ф������������¤�������ƤΥե�������ɤ߹��ߡ��񤭹��ߤ���ǽ�ˤʤäƤ��ޤ�����Ǥ���

COPY��psql��\copy�Ȥϰۤʤ��ΤǤ��뤳�Ȥ����դ��Ƥ��������� \copy��COPY FROM STDIN��COPY TO STDOUT��ƤӽФ���psql���饤����Ȥ��饢�������Ǥ���ե�����˥ǡ����ν񤭹���/�ɤ߹��ߤ�Ԥ��ޤ��� �������äơ�\copy���ޥ�ɤǤϡ��ե�����ؤΥ�����������ǽ���ɤ����ȡ��ե�������Ф��륢���������¤�̵ͭ�ϡ������ФǤϤʤ����饤�����¦�˰�¸���ޤ���

COPY�ǥե�����̾����ꤹ����ϡ�������Хѥ��ǵ��Ҥ��뤳�Ȥ򤪴��ᤷ�ޤ��� COPY TO���ޥ�ɤξ��ϥ����Фˤ�äƶ���Ū�����Хѥ�����ˤ������ޤ�����COPY FROM���ޥ�ɤǤ����Хѥ��ǻ��ꤵ�줿�ե�������ɤ߹��ळ�Ȥ��ǽ�ȤʤäƤ��ޤ��� ��ԤǤϡ����饤����Ȥκ�ȥǥ��쥯�ȥ�ǤϤʤ��������Хץ������κ�ȥǥ��쥯�ȥ�ʥǡ����ǥ��쥯�ȥ겼�Τɤ����ˤ��������Ū�ʥǥ��쥯�ȥ�Ȥ��Ʋ�ᤵ��ޤ���

COPY FROM�ϡ�����ơ��֥���Ǥ�դΥȥꥬ�ȥ����å������ƤӽФ��ޤ������롼��ϸƤӽФ��ޤ���

COPY�������Ϥ�DateStyle�αƶ�������ޤ��� �ǥե���Ȱʳ���DateStyle�����ꤵ�줿��ǽ��������PostgreSQL���󥹥ȥ졼�����Ȥΰܿ���μ¤˹Ԥ��������ϡ�COPY��Ȥ�����DateStyle��ISO�����ꤷ�ʤ���Фʤ�ޤ���

COPY�Ǥϡ����顼��ȯ������Ȥ����˽�������ߤ��ޤ��� COPY TO���ޥ�ɤμ¹ԤǤϲ������ꤢ��ޤ��󤬡�COPY FROM�ξ��ϡ��оݤȤʤ�ơ��֥�Ͻ������ιԤ���˼�����äƤ��ޤ��� �����ιԤ��ԲĻ�Ȥʤꡢ�����������뤳�Ȥ�Ǥ��ޤ��󤬡��ǥ������ΰ����ͭ���ޤ��� �������äơ��礭�ʥ��ԡ������˲��٤⼺�Ԥ������ˤϡ�̵��Ǥ��ʤ��ۤ�̵�̤ʥǥ������ΰ褬�����Ƥ��ޤ��ޤ��� ����̵�̤��ΰ�����᤹�ˤϡ�VACUUM��Ԥ�ɬ�פ�����ޤ���

�ե�����η���

�ƥ����ȷ���

COPY�� BINARY���ץ����ޤ���CSV���ץ������ղä��ʤ��ǻ��Ѥ�����硢�ɤ߽񤭤����ǡ����ϥơ��֥��1�ĤιԤ�1�Ԥ�ɽ�����ƥ����ȥե�����Ȥʤ�ޤ��� �������϶��ڤ�ʸ���Ƕ��ڤ��ޤ��� °���ͼ��Τϡ�����°���Υǡ������ν��ϴؿ����������줿���ޤ��ϡ��������ϴؿ��Ǽ����դ���ǽ��ʸ����Ǥ��� �ͤ�NULL����Ǥϡ�����˻��ꤵ�줿NULL�ͤ�ɽ��ʸ���󤬻��Ѥ���ޤ��� ���ϥե�����Τ����줫�ιԤˤ��������ͽ�����줿���Ȱ㤦��硢COPY FROM�ϥ��顼��ȯ�����ޤ��� OIDS�����ꤵ�줿��硢OID�ϡ��桼���ǡ�����������ˤ��롢1���ܤ���Ȥ����ɤ߽񤭤���ޤ���

�ǡ����ν�λ�ϡ��Хå�����å���ȥԥꥪ�ɡ�\.�ˤΤߤ��鹽�������1�Ԥ�ɽ����ޤ��� EOF�ʥե�����ν�λ�ˤ�Ȥ���Ʊ�����Ȥ��¸��Ǥ���Τǡ��ե����뤫����ɤ߹��ߤξ��ϥǡ�����λ�ޡ��������פǤ��� ��������3.0�����Υ��饤����ȥץ��ȥ������Ѥ������饤����ȥ��ץꥱ�������ȥǡ����Υ��ԡ���Ԥ��������ϡ��ɤ߹��ߡ��񤭹��ߤ���鷺����λ�ޡ�����ɬ�פǤ���

�Хå�����å���ʸ����\�ˤϡ�COPY�оݥǡ�����ǡ��Ԥ���ζ��ڤ�ʸ����Ƚ�ꤵ����ǽ��������ǡ���ʸ����ΰ������դ��˻��Ѥ��ޤ��� �äˡ��Хå�����å��弫�Ρ����ԡ�������ζ��ڤ�ʸ���ʤɤ�ʸ��������ͤ˴ޤޤ�Ƥ�����ϡ�ɬ�����˥Хå�����å�����դ��ʤ���Фʤ�ޤ���

���ꤵ�줿NULLʸ����ϥХå�����å�����դ�����COPY TO�������ޤ��� ������COPY FROM�Ǥϡ��Хå�����å��������������NULLʸ��������Ϥ���Ӥ���ޤ��� �������äơ�\N�Ȥ��ä�NULLʸ���󤬼ºݤ�\N�Ȥ����ǡ����ͤȺ��𤹤뤳�ȤϤ������ޤ��� �ʤ����\\N�Ȥ���ɽ������ޤ�����

COPY FROM�ϡ��Хå�����å���ǻϤޤ뼡�Τ褦��ʸ�����¤Ӥ��̤��ޤ���

ʸ�����¤�ɽ��
\b�Хå����ڡ�����ASCII 8��
\f���ڡ�����ASCII 12��
\n���ԡ�ASCII 10��
\r������ASCII 13��
\t���֡�ASCII 9��
\v��ľ���֡�ASCII 11��
\�����Хå�����å����³��1����3�Ĥ�8�ʿ��ο����򥳡����ֹ�Ȥ��ƻ��ꤹ��ȡ����Υ����ɤ�ɽ��ʸ�������Ǥ��ޤ���
\xdigits�Хå�����å��塢x �Ȥ����¤Ӥ�³��1����2�Ĥ�16�ʿ��ο����򥳡����ֹ�Ȥ��ƻ��ꤹ��ȡ����Υ����ɤ�ɽ��ʸ�������Ǥ��ޤ���

���ߡ�COPY TO�ϡ��Хå�����å���θ����8�ʿ���16�ʿ����դ���������ʸ������Ϥ��뤳�ȤϤ���ޤ��󤬡��嵭������¸�ߤ��ʤ�����ʸ�����ޤޤ�Ƥ�����ϡ����η�������Ѥ��ޤ���

�ǡ�����N�ޤ��ϥԥꥪ�ɡ�.�ˤ��ޤޤ�Ƥ������������ʸ�������˥Хå�����å�����դ��ʤ��Ǥ��������� �����Ȥ߹�碌�ϡ����줾�졢NULLʸ���ȥǥե���ȤΥǡ�����λ�ޡ����ȴְ�äƲ�ᤵ��Ƥ��ޤ��ޤ��� ��Ҥ����ʳ��ΥХå�����å��夬�դ���줿ʸ���Ϥ��Τޤ޲�ᤵ��ޤ���

COPY�ǡ������������륢�ץꥱ�������ϡ��ǡ�����β��Ԥ������򤽤줾�졢\n��\r���Ѵ����뤳�Ȥ򶯤��侩����Ƥ��ޤ��� ���ߤΤȤ������Хå�����å��������ʸ���ǥǡ������������ɽ�����ꡢ�Хå�����å���Ȳ���ʸ���ǥǡ�����β��Ԥ�ɽ�����Ȥ���ǽ�Ǥ��� ���������������ä�ɽ���Ϻ���Υ�꡼���Ǥϡ������դ����ʤ��ʤ��ǽ��������ޤ��� �ޤ���COPY�ե����뤬�ۤʤ�ޥ����ޤ����ä�ž��������硢��»���뤪���줬���ʤꤢ��ޤ� ���㤨�С�Unix����Windows���뤤�Ϥ��εաˡ�

COPY TO�ϳƹԤι�����Unix�����β��ԡ�"\n"�ˤ���Ϥ��ޤ��� �ʤ���Microsoft Windows�Dz�Ư���륵���Фξ��ϡ������о�Υե�����ؤ�COPY�ξ��ˤΤ�����/���ԡ�"\r\n"�ˤ���Ϥ��ޤ��� �ץ�åȥե������ޤ����������Τ���ˡ������ФΥץ�åȥե�����ˤ�����餺��COPY TO STDOUT�Ͼ��"\n"���������ޤ��� COPY FROM�ϡ����ԡ�����������/���Ԥ�����Ȥ��ư������Ȥ��Ǥ��ޤ��� �ǡ�����տޤ����Хå�����å���Τʤ����Ԥ������ˤ�륨�顼�δ������򸺤餹����ˡ�COPY FROM�ϡ����ϹԤι��������ƶ��̤Ǥʤ����˷ٹ��ȯ���ޤ���

CSV����

���η����ϡ����ץ�åɥ����Ȥʤ�¾��¿���Υץ������ǻ��Ѥ���륫��޶��ڤ��͡�CSV�˥ե���������򥤥�ݡ��ȡ��������ݡ��Ȥ��뤿��˻��Ѥ���ޤ��� PostgreSQL��ɸ��ƥ����ȥ⡼�ɤǻ��Ѥ���륨�������פ�����ˡ�����Ū��CSV�Υ��������׵�����������ǧ�����ޤ���

�ƥ쥳���ɤ��ͤ�DELIMITERʸ���Ƕ��ڤ��ޤ��� ���ڤ�ʸ����QUOTEʸ����NULLʸ��������������ʸ����ޤ��ͤξ�硢���Τ��ͤ������QUOTEʸ������Ϳ����ޤ����ͤ����QUOTEʸ����ESCAPEʸ����������硢�������˥����������Ѥ�ʸ������Ϳ����ޤ��� �ޤ���FORCE QUOTE����Ѥ��ơ������������NULL�ͤ���Ϥ�����˶���Ū�˰��������Ϳ���뤳�Ȥ�Ǥ��ޤ���

CSV�񼰤ˤ�NULL�ͤȶ�ʸ����Ȥ���̤���ɸ��Ū����ˡ�Ϥ���ޤ��� PostgreSQL��COPY�Ǥϡ�������ˤ�äƤ������̤��Ƥ��ޤ��� NULL��NULLʸ����Ȥ��ƽ��Ϥ��졢������ǰϤޤ�ޤ��� ������NULLʸ����˰��פ���ǡ����ͤϰ�����ǰϤޤ�ޤ��� ���η�̡��ǥե���Ȥ��������Ѥ���ȡ�NULL�ϰ�����ǰϤޤ�ʤ���ʸ����Ȥ��ơ���������ʸ�������Ű�����ǰϤޤ�ơ�""�˽��Ϥ���ޤ��� �ǡ������ɤ߹��ߤκݤ�Ʊ�ͤε�§�˽����ޤ��� FORCE NOT NULL����Ѥ��ơ���������Ф�NULL���Ϥ���Ӥ�Ԥ�ʤ��褦�ˤ��뤳�Ȥ�Ǥ��ޤ���

CSV�񼰤ǤϥХå�����å�������̤�ʸ���ǤϤ���ޤ���Τǡ��ǡ�����ü����\.�ϥǡ����ͤȤ��Ƹ���뤳�Ȥ�����ޤ��� ���ä������ɤ�����ˡ�����ΰ���ܤȤ���\.�Ȥ����ǡ����ͤ�������硢���Ϥ˼�ưŪ�˰����䤬�դ����ޤ��� �ޤ������ϤǤϰ�����dz��줿���ǡ�����ü����Ȥ��Ʋ�ᤵ��ޤ��� ñ��ΰ�����dz���ʤ����\.�Ȥ����ͤ���IJ�ǽ�������롢¾�Υ��ץꥱ�������Ǻ������줿�ե����������ɤ��褦�Ȥ����硢���ϥե�������Τ��������ͤ������dz��ɬ�פ�����ޤ���

����: CSV�⡼�ɤǤ�ʸ���Ϥ��٤ư�̣������ޤ��� ����ʸ���dz��줿ñ��������DELIMITER�ʳ���Ǥ�դ�ʸ������������ʸ���˴ޤޤ�ޤ��� ����ˤ�ꡢ����Ĺ�ˤ��뤿���CSV�ιԤ˶���ʸ�������륷���ƥफ����Ф����ǡ����򥤥�ݡ��Ȥ�����˥��顼��ȯ�������ǽ��������ޤ��� ���Τ褦�ʾ����ˤʤä���硢PostgreSQL�˥ǡ����򥤥�ݡ��Ȥ������ˡ�����CSV�ե����뤫������ζ����������������ɬ�פˤʤ�ޤ���

����: CSV�⡼�ɤϡ�����ʸ�������ʸ���������ޤ������ǰϤޤ줿�ͤ�ޤ�CSV�ե������ǧ�������������ޤ��� �������äơ����Υե�����Ǥϡ��ƥ����ȥ⡼�ɤΤ褦��1�ĤΥơ��֥�Ԥ�1�Ԥ�ɽ����Ƥ���Ȥϸ¤�ޤ���

����: ��̯�ʡʻ��ˤϴְ�ä���CSV�ե��������������ץ�������¿��¸�ߤ���Τǡ����Υե�����񼰤ˤ�ɸ�����¿���δ���������ޤ��� �������äơ����ε�ǽ�ǥ���ݡ��ȤǤ��ʤ��ե����뤬¸�ߤ��뤫�⤷��ޤ��󤷡�COPY��¾�Υץ������ǽ����Ǥ��ʤ��ե�������������뤫�⤷��ޤ���

�Х��ʥ����

COPY BINARY�ǻ��Ѥ����ե����������PostgreSQL 7.4���ѹ�����ޤ����� �����������ϡ��ե�����إå����ԥǡ�����ޤ�0�ʾ�Υ��ץ롢�ե�����ȥ졼�餫�鹽������ޤ��� �إå��ȥǡ����ϡ��ͥåȥ���Х��ȥ������ˤʤ�ޤ�����

�ե�����إå�

�ե�����إå���15�Х��Ȥθ���ե�����ɤȤ��θ��³������Ĺ�إå���ĥ�ΰ褫�鹽������ޤ��� ����ե�����ɤϰʲ����̤�Ǥ���

��̾

PGCOPY\n\377\r\n\0�Ȥ���11�Х��Ȥ��¤ӤǤ��� ���ν�̾��ɬ����ʬ��NULL�Х��Ȥ��ޤޤ�Ƥ��뤳�Ȥ����դ��Ƥ������� �ʤ��ν�̾�ϡ�8�ӥåȤ��̲ᤵ���ʤ�ž�������ˤ�äƥե����뤬��»������硢������ưפ˼��̤Ǥ���褦���߷פ���Ƥ��ޤ��� ��̾�ϡ����ԥ������Ѵ���NULL�Х��Ȥκ������̥ӥå�������ѥ�ƥ����ѹ��ʤɤˤ�ä��Ѳ����ޤ��ˡ�

�ե饰�ե������

���Υե���������ν��פ���ʬ�Ȥʤ�32�ӥå������Υӥåȥޥ����Ǥ��� �ӥåȤˤ�0��LSB�� ����31��MSB�ˤޤǤ��ֹ椬�դ��Ƥ��ޤ��� ���Υե�����ɤϡ����Υե���������ǻ��Ѥ����¾�����Ƥ������ե�����ɤ�Ʊ�͡��ʺ���Х��Ȥ��ǽ�˸����˥ͥåȥ���Х��ȥ���������¸����Ƥ��뤳�Ȥ����դ��Ƥ��������� �ե�������������̿Ū�������ɽ������ˡ�16-31�ӥåȤ�ͽ�󤵤�Ƥ��ޤ��� �����ϰϤ����곰�ΥӥåȤ����ꤵ��Ƥ��뤳�Ȥ�Ƚ��������硢�ɤ߹�����Ͻ��������Ǥ��ʤ���Фʤ�ޤ��� �����ߴ��ˤ������������������Τ��뤿��ˡ�0-15�ӥåȤ�ͽ�󤵤�Ƥ��ޤ��� �����ϰϤ����곰�ΥӥåȤ����ꤵ��Ƥ��Ƥ⡢�ɤ߹������̵�뤹�٤��Ǥ��� ���ߡ�1�ĤΥӥåȤ������ե饰�ӥåȤȤ����������Ƥ��ꡢ�Ĥ��0�Ǥʤ���Фʤ�ޤ���

�ӥå�16

1�ʤ�С�OID���ǡ����˴ޤޤ�Ƥ��ޤ��� 0�ʤ�С��ޤޤ�Ƥ��ޤ���

�إå���ĥ�ΰ�Ĺ

��ʬ���Ȥ���������إå��λĤ���ʬ�ΥХ���Ĺ�򼨤�32�ӥåȤ������Ǥ��� ���ߡ������0�ȤʤäƤ��ꡢ������˺ǽ�Υ��ץ뤬³���ޤ��� ���塢�إå�����ɲåǡ������Ǽ����褦�ʷ������ѹ������뤫�⤷��ޤ��� �ɤ߹���¦�Ǥϡ��إå���ĥ�ǡ����ΰ������狼��ʤ���硢���Υǡ����򥹥��åפ��ʤ���Фʤ�ޤ���

�إå���ĥ�ΰ�ϡ����켫�Ȥ�ǧ�����뤳�Ȥ��Ǥ�������¤Ӥ��ݻ����뤿����Ѱդ���Ƥ��ޤ��� �ե饰�ե�����ɤ��ɤ߹�����˳�ĥ�ΰ�����Ƥ��Τ餻���ΤǤϤ���ޤ��� �إå���ĥ���Ƥθġ����߷פϺ���Υ�꡼���Τ���˻Ĥ��Ƥ���ޤ���

�����߷פˤ�äơ������ߴ�����ݻ�����إå����ɲáʥإå���ĥ����󥯤��ɲä䲼�̥ե饰�ӥåȤ�����ˤȸ����ߴ����Τʤ��ѹ����ѹ������Τ��뤿��ι�̥ե饰�ӥåȤ������ɬ�פ˱�������ĥ�ΰ�ؤΥ��ݡ��Ⱦ����ɲáˤ�ξ�����б��Ǥ��ޤ���

���ץ�

���ƤΥ��ץ�ϥ��ץ���Υե�����ɿ���ɽ��16�ӥåȤ���������Ϥޤ�ޤ��ʸ������Ǥϡ��ơ��֥�������ƤΥ��ץ��Ʊ��Υե�����ɿ�����Ĥ��ȤˤʤäƤ��ޤ��������塢������ѹ�������ǽ��������ޤ��ˡ� ���θ�ˡ����ץ���Τ��줾��Υե�����ɤ�³���ޤ��������Υե�����ɤˤϡ���Ƭ�˥ե�����ɥǡ��������Х��Ȥ��뤫��ɽ��32�ӥå�Ĺ�Υ�ɤ��դ����Ƥ��ޤ� �ʤ��Υ�ɤ�ɽ��Ĺ���ˤϼ�ʬ���Ȥϴޤޤ�ޤ��󡣤������äơ�0�ˤʤ뤳�Ȥ⤢��ޤ��ˡ� �ü���ͤȤ���NULL�ե�����ɤ�ɽ��-1���Ѱդ���Ƥ��ޤ��� ����NULL�����ꤵ�줿��硢���ѤΥХ��ȤϤ���ޤ���

�ե�����ɴ֤ˤ������ѤΥѥåɤ䤽��¾��;�פʥǡ����Ϥ���ޤ���

���ߡ�COPY BINARY�ե�����������ƤΥǡ����ͤϡ��Х��ʥ�����ʷ���������1�ˤǤ���Ȳ��ꤵ��Ƥ��ޤ��� ����γ�ĥ�ˤ�äơ���ñ�̤˷��������ɤ���ꤹ��إå��ե�����ɤ��ɲä���뤳�Ȥ�ͽ�ۤ�����ΤǤ���

�ºݤΥ��ץ�ǡ����Ȥ���Ŭ�ڤʥХ��ʥ��������ꤹ�뤿��ˤϡ�PostgreSQL�Υ��������ä˳���Υǡ������Ѥ�*send �ؿ���*recv�ؿ����̾�����ʪ���src/backend/utils/adt�ǥ��쥯�ȥ�ˤ���ޤ��ˤ�Ĵ�٤ʤ���Фʤ�ޤ���

���Υե������OID���ޤޤ���硢OID�ե�����ɤ��ե�����ɿ���ɤ�ľ���³���ޤ��� ����ϡ��ե�����ɥ�����Ȥ�����ʤ���������ơ��̾�Υե�����ɤǤ��� �ä�Ĺ����ɤ����뤿�ᡢ��ϫ���뤳�Ȥʤ���4�Х��Ȥ�OID��8�Х��Ȥ�OID�ⰷ�����Ȥ��Ǥ��ޤ��� �ޤ�������ˤ�ꡢ˾�ޤ�����Ƚ�Ǥ����С�OID��NULL�Ȥ���ɽ�����뤳�Ȥ��Ǥ��ޤ���

�ե�����ȥ졼��

�ե�����ȥ졼��ϡ�-1��ޤ����16�ӥåȤ�������ɤǹ�������ޤ��� ���ץ�Υե�����ɥ�����ȥ�ɤ���Ѥ���С����Υ�ɤ��ưפ˸�ʬ���뤳�Ȥ��Ǥ��ޤ���

�ɤ߹���¦�ϡ��ե�����ɥ�����ȥ�ɤ�-1�Ǥ⡢���ꤷ������Ǥ�ʤ��ä����ϥ��顼����𤷤ʤ���Фʤ�ޤ��� ����ˤ�ꡢ���餫����ͳ�ǥǡ����Ȥ�Ʊ�������ʤ��ʤä����Ȥ�Ƚ�ꤹ�����̤ʸ�����Ԥ����Ȥ���ǽ�ˤʤ�ޤ���

��

������Ǥϡ��ե�����ɶ��ڤ�ʸ���Ȥ��ƽ�����|�ˤ���Ѥ��ƥơ��֥�򥯥饤����Ȥ˥��ԡ����ޤ���

COPY country TO STDOUT WITH DELIMITER '|';

�ե����뤫��country�ơ��֥�˥ǡ����򥳥ԡ����ޤ���

COPY country FROM '/usr1/proj/bray/sql/country_data';

����ơ��֥����Ѥ���̾����'A'����Ϥޤ��Τߤ�ե�����˥��ԡ����ޤ��� ���ΰ���ơ��֥�ϼ�ưŪ�˺������ޤ���

BEGIN;
CREATE TEMP TABLE a_list_countries AS
    SELECT * FROM country WHERE country_name LIKE 'A%';
COPY a_list_countries TO '/usr1/proj/bray/sql/a_list_countries.copy';
ROLLBACK;

�����STDIN����ơ��֥�˥��ԡ�����Τ�Ŭ�����ǡ�������Ǥ���

AF      AFGHANISTAN
AL      ALBANIA
DZ      ALGERIA
ZM      ZAMBIA
ZW      ZIMBABWE

�ƹԤζ���ʸ���ϼºݤˤϥ���ʸ���Ǥ��뤳�Ȥ����դ��Ƥ���������

�ʲ���Ʊ��Υǡ�����Х��ʥ�񼰤ǽ��Ϥ�����ΤǤ��� �ǡ�����Unix�桼�ƥ���ƥ�od -c��Ȥäƥե��륿������Τ򼨤��ޤ��� �ơ��֥�ˤ�3�󤢤ꡢ�ǽ�Υǡ�������char(2)��2���ܤ�text��3���ܤ�integer�Ǥ��� ���ƤιԤ�3���ܤ�NULL�ͤǤ���

0000000   P   G   C   O   P   Y  \n 377  \r  \n  \0  \0  \0  \0  \0  \0
0000020  \0  \0  \0  \0 003  \0  \0  \0 002   A   F  \0  \0  \0 013   A
0000040   F   G   H   A   N   I   S   T   A   N 377 377 377 377  \0 003
0000060  \0  \0  \0 002   A   L  \0  \0  \0 007   A   L   B   A   N   I
0000100   A 377 377 377 377  \0 003  \0  \0  \0 002   D   Z  \0  \0  \0
0000120 007   A   L   G   E   R   I   A 377 377 377 377  \0 003  \0  \0
0000140  \0 002   Z   M  \0  \0  \0 006   Z   A   M   B   I   A 377 377
0000160 377 377  \0 003  \0  \0  \0 002   Z   W  \0  \0  \0  \b   Z   I
0000200   M   B   A   B   W   E 377 377 377 377 377 377

�ߴ���

ɸ��SQL�ˤ�COPYʸ�Ϥ���ޤ���

�ʲ��ι�ʸ�ϡ�PostgreSQL�С������7.3������˻��Ѥ���Ƥ�����Τǡ��ޤ����ݡ��Ȥ���Ƥ��ޤ���

COPY [ BINARY ] tablename [ WITH OIDS ]
    FROM { 'filename' | STDIN }
    [ [USING] DELIMITERS 'delimiter' ]
    [ WITH NULL AS 'null string' ]

COPY [ BINARY ] tablename [ WITH OIDS ]
    TO { 'filename' | STDOUT }
    [ [USING] DELIMITERS 'delimiter' ]
    [ WITH NULL AS 'null string' ]