����ץ��Ʊ�����Υ��ץꥱ�������ξ�硣 ���ޥ�ɤμ¹Ԥ� PQexec �ؿ��ǽ�ʬ�Ǥ��� ���������礭��������Ĥ������Ƥ��ޤ���
PQexec �ϡ����ޥ�ɤ���λ����ޤ��Ԥ����֤ˤʤ�ޤ��� ���δ֡����ץꥱ�������ˤ�¾�ˤ���٤���Ȥ����뤫�⤷��ޤ��� �ʤ��Ȥ��Х桼�����ե�������Ĵ���ʤɡˡ� ���Τ褦�ʾ��ϱ����Ԥ��ǥ֥��å����줿������ޤ���
����� PQexec �ؿ�����������ޤ�Ƥ��ޤäƤ��ޤ����������äơ�������Υ��ޥ�ɤ�뤹�륿���ߥ�ե���ȥ����¦��Ƚ�Ǥ���ΤϺ���Ǥ��� �ʤ�äȤ⡢�����ʥ�ϥ�ɥ餫��ϲ�ǽ�Ǥ�����¾����ˡ�Ϥ���ޤ���
PQexec ���֤��� PGresult ��¤�Τ� 1 �Ĥ����Ǥ��� �⤷���������䤤��碌ʸ����ʣ���� SQL ���ޥ�ɤ�ޤ�Ǥ����硢PQexec �ϺǸ�Τ�Τ���������ơ��Ĥꤹ�٤Ƥ� PGresult ���˴����Ƥ��ޤ��ޤ���
���ץꥱ�������ˤȤäƤ��Τ褦�����¤�˾�ޤ����ʤ����ϡ������ PQexec ��������ؿ� PQsendQuery �� PQgetResult ����Ѥ��Ƥ���������
PQputline �� PQputnbytes ��Ʊ�ͤˡ����ε�ǽ����ȤäƤ���Ť��ץ������ϡ��Хå�����ɤؤΥǡ��������Ԥ���֥��å����Ƥ��ޤ���ǽ��������ޤ����� ����������б����뤿��ˡ�PQsetnonblocking ���ɲä���ޤ�����
�Ť�Υ��ץꥱ�������Ǥϡ�PQsetnonblocking ���Ȥ��Ƥ��ʤ��ä��ꡢ�Τ�����Ū�˥֥��å������ư�����Ƥ��ʤ��ä��ꤷ�ޤ����� �������ץ������Ǥϡ�PQsetnonblocking ����Ѥ��ơ��Хå�����ɤȤδ�������֥��å����֤Ǥ���³��¸��Ǥ��ޤ���
PQsetnonblocking ��³����֥��å����֤����ꤷ�ޤ���
int PQsetnonblocking(PGconn *conn, int arg)
arg �� 1 �ξ��ϡ���³����֥��å����֤ˤʤꡢarg �� 0 �ξ��ϥ֥��å����֤ˤʤ�ޤ��� ������������ 0 ���Ԥ������� -1 ���֤��ޤ���
��֥��å����֤ˤ����Ƥϡ�PQputline��PQputnbytes��PQsendQuery��PQendcopy �θƤӽФ��ϥ֥��å�����ޤ����������ꡢ���顼���֤������ˤϤ����δؿ���⤦���ٸƤӽФ��ʤ���Ф����ޤ���
�ǡ����١�����³����֥��å��⡼�ɤˤʤäƤ��ơ�PQexec ��ƤӽФ����Ȥ��ˤϡ�PQexec ����λ����ޤǡ����Ū����³��֥��å����֤ˤ��ޤ���
libpq ��¿���Τ�ΤˤĤ��Ƥ⡢�ᤤ���� PQsetnonblocking �������˵�ǽ����褦�ˤʤ�Ȼפ��ޤ���
PQisnonblocking �ǡ����١�����³���֥��å�����Ƥ��뤫�ɤ������֤��ޤ���
int PQisnonblocking(const PGconn *conn)
��³����֥��å��⡼�ɤˤʤäƤ������ 1 ���֤����֥��å��⡼�ɤξ��� 0 ���֤��ޤ���
PQsendQuery ��̤��Ԥ������䤤��碌���Ф�����ޤ��� �䤤��碌�Ϥ��������������졢��������� 1 ���Ԥ���� 0 ���֤��ޤ��ʤ��ξ�硢PQerrorMessage ��Ȥ��м��Ԥ�����ͳ�ξܺ٤��Τ뤳�Ȥ��Ǥ��ޤ��ˡ�
int PQsendQuery(PGconn *conn, const char *query);
PQsendQuery�ƤӽФ������������顢PQgetResult���֤��ƤӽФ��ơ��¹Է�̤�������ޤ���PQgetResult �� NULL ���֤������ޥ�ɤ���λ�������Ȥ��ޤǤϡ�Ʊ����³��PQsendQuery ����ٸƤ�ǤϤ����ޤ���
PQgetResult ��˼¹Ԥ��줿PQsendQuery�η�̤��༡�Ԥ������η�̤��֤��ޤ��� �䤤��碌�¹Ԥ���λ�������NULL���֤��ޤ��� NULL���֤ä���硢���Ф���̤Ϥ���ʾ夢��ޤ���
PGresult *PQgetResult(PGconn *conn);
���ޥ�ɤ���λ�������Ȥ� NULL ���֤�ޤǡ�PQgetResult���֤��ƸƤӽФ��ʤ���Фʤ�ޤ��� �ʥ��ޥ�ɤ��ʤ���Ƥ��ʤ����֤ǸƤӽФ��ȡ�PQgetResult �Ϥ������� NULL ���֤������Ǥ��ˡ�PQgetResult ���������� NULL �Ǥʤ��ġ��η�̤ϡ������������� PGresult �Υ������å��ؿ���Ʊ����Τ�Ȥäƽ������Ƥ��������� ����������ä���PQclear ��Ȥ����ġ��η�̥��֥������Ȥ��ΰ���������Τ�˺��ʤ��褦�ˡ� �ʤ����䤤��碌���¹���Ǥ��ꡢ���� PQconsumeInput��Ȥä�ɬ�פʱ����ǡ������ɤ߹���Ǥ��ʤ��Ȥ������ϡ�PQgetResult ��������֥��å����Ƥ��ޤ����Ȥ����դ��Ƥ���������
PQsendQuery �� PQgetResult ��Ȥ����Ȥ� PQexec ������� 1 �IJ�褷�ޤ��� �Ĥޤꡢ���ޥ�ɤ�ʣ���� SQL ���ޥ�ɤ�ޤ�Ǥ�����Ǥ⡢�����Υ��ޥ�ɤη�̤�ġ������뤳�Ȥ��Ǥ���櫓�Ǥ� �ʤ����¿�Ž�����ץ�ʷ��Ǽ¸����ޤ��� ñ��Υ��ޥ��ʸ����˴ޤޤ��ʣ�����䤤��碌�Τ�������ˤ����Τ�������Ǥ�ե���ȥ���ɤ���˴�λ������̤��鰷�����Ȥ��Ǥ��뤫��Ǥ��ˡ� �������Хå�����ɤ����� SQL ���ޥ�ɤν���������ȡ����줬��λ����ޤǤ�Ϥ� PQgetResult �θƤӽФ����ե���ȥ���ɤ�֥��å����Ƥ��ޤ��ޤ��� ������ɤ��ˤϡ������3�Ĥδؿ��ޤ��Ȥ����Ȥ����ڤǤ���
PQconsumeInput �Хå�����ɤ�������Ϥ���ǽ�ˤʤä������ǡ������ֵۤ����פޤ���
int PQconsumeInput(PGconn *conn);
PQconsumeInput ���̾"���顼�ʤ�" �� 1 ���֤��ޤ��������餫�ξ㳲������� 0 ���֤��ޤ��ʤ��ξ��ϡ�PQerrorMessage �����åȤ���ޤ��ˡ� ���η�̤ϲ��餫�����ϥǡ��������ºݤ˼������줿���ɤ������Ƥ���ΤǤϤʤ����Ȥ����դ��Ƥ��������� PQconsumeInput �θƤӽФ��塢���ץꥱ�������� PQisBusy���ޤ���ɬ�פ������ PQnotifies ��ƤӽФ��ƾ��֤��Ѳ����ʤ���Ĵ�٤뤳�Ȥ��Ǥ��ޤ���
PQconsumeInput �ϡ���̤����Τ��褦�ˤޤ��������Ƥ��ʤ����ץꥱ�������Ǥ�ƤӽФ����Ȥ��Ǥ��ޤ��� ���Υ롼�����ͭ���ʥǡ������ɤ߹���ǥХåե�����¸������̤Ȥ��� select �ˤ���ɤ߹��߽�����λ�����Τ�ꥻ�åȤ��ޤ��� �������äƥ��ץꥱ��������PQconsumeInput ��Ȥ��� select()�θ��������������������Ȥ��Ǥ��ޤ����顢���ȤϤ�ä���ȷ�̤�Ĵ�٤Ƥ��Ф����櫓�Ǥ���
PQisBusy ���δؿ��� 1 ���֤����ΤǤ���С��䤤��碌�Ͻ����κ���ǡ�PQgetResult �����Ϥ��Ԥä��ޤޥ֥��å����֤ˤʤäƤ��ޤ��Ǥ��礦�� 0 ���֤ä��ΤǤ���С�PQgetResult ��ƤӽФ��Ƥ�֥��å�����ʤ����Ȥ��ݾڤ���ޤ���
int PQisBusy(PGconn *conn);
PQisBusy ���ȤϥХå�����ɤ���ǡ������ɤ߹������ޤ��Ǥ����顢�ޤ��ǽ�� PQconsumeInput ��ƤӽФ�ɬ�פ�����ޤ����������ʤ��ȥӥ������֤����ĤޤǤ�³���ޤ���
PQflush �����Ԥ��Υǡ�����Хå�����ɤ��������ޤ��� �ǡ������������������뤫�����Ԥ��Υǡ������ʤ���С�0 ���֤��ޤ��� ���餫����ͳ�Ǽ��Ԥ������ϡ�EOF ���֤��ޤ���
int PQflush(PGconn *conn);
��֥��å���³���ˤϡ�select() ��ƤӽФ��Ʊ�����Ƚ�ꤹ�����ˡ�PQflush ��ƤӽФ��Ƥ����ʤ���Ф����ޤ��� 0 ���֤äƤ�����硢�Хå�����ɤؤ������Ԥ��ǡ������ʤ����Ȥ��ݾڤ���ޤ��� PQsetnonblocking ����Ѥ��Ƥ��륢�ץꥱ�������ΤߤǤ��δؿ���ɬ�פˤʤ�ޤ���
PQsocket �Хå�����ɤȤ���³�����åȤ��Ф���ե����뵭�һ��ֹ�����ޤ��� ͭ���ʵ��һҤʤ��ͤ� 0 �ʾ�Ǥ��� -1 �ξ��ϡ��Хå�����ɤȤ���³���ޤ������ץ�Ƥ��ʤ����Ȥ��ޤ���
int PQsocket(const PGconn *conn);
select ��¹Ԥ���ݤ˻Ȥ��Хå�����ɤؤΥ����åȵ��һҤ�����ˤϡ����� PQsocket ��Ȥ��ޤ��� ���ץꥱ�������Ϥ��δؿ��ˤ�äƥХå�����ɤ���α��������뤤�Ϥ���¾�ξ��֤��ԤĤ��Ȥ��Ǥ���褦�ˤʤ�ޤ��� �⤷ select() ���Хå�����ɤؤΥ����åȤ���ǡ������ɤ߹������֤ˤʤä����Ȥ����顢PQconsumeInput ��ƤӽФ��ƥǡ������ɤ߹��ߤޤ��� ���줫�� PQisBusy �� PQgetResult�����뤤��ɬ�פʤ�PQnotifies��ȤäƱ�����������ޤ���
PQflush �� 0 ���֤��ơ��Хå�����ɤؤ��������ԤäƤ���Хåե�����줿�ǡ������ʤ����Ȥ��ޤǡ�PQsetnonblocking ��Ȥä���֥��å���³�ϡ�select() ����Ѥ��٤��ǤϤ���ޤ���
�����δؿ�����Ѥ���ե���ȥ���ɤϡ�select ��Ȥä��ᥤ��롼�פ��������������ʤ��ƤϤ����ʤ����٤Ƥξ��֤��Ԥ��ޤ��� �䤬�Ƥ��ξ��֤Τ���1�ġ�select �ؿ��������鸫��С�PQsocket �dz�ǧ�����ե����뵭�һҤ����ɤ߹����ǡ����ˤ��Хå�����ɤ������ϲ�ǽ�ˤʤ�ޤ��� �ᥤ��롼�פ����Ϥ���ǽ�ˤʤä����ȤФ����顢PQconsumeInput��ƤӽФ������Ϥ��ɤ߹��ߤޤ��� ³����PQisBusy��ƤӽФ���PQisBusy��FALSE(0)���֤����顢�����PQgetResult��ƤӽФ��ޤ��� ���뤤�� PQnotifies ��ƤӽФ��ơ����Υ�å������Ф�����⤢��ޤ���Section 1.6�ȡˡ�
PQsendQuery/PQgetResult ��Ȥ��ȡ��Хå�����ɤǽ�����Υ��ޥ�ɤ�ե���ȥ���ɤ��饭��뤹��褦�᤹�뤳�Ȥ��Ǥ��ޤ���
PQrequestCancel PostgreSQL�˸��ߤΥ��ޥ�ɤν��������Ǥ���褦�ᤷ�ޤ���
int PQrequestCancel(PGconn *conn);
�������μ������줬��������� 1 �����Ǥʤ���� 0 ���֤��ޤ� �ʼ��Ԥ������ϡ�PQerrorMessage �Ǹ������Τ뤳�Ȥ��Ǥ��ޤ��ˡ� ��������μ������줬���������Ȥ��Ƥ⡢������θ��̤��Ф뤳�ȤϤޤä����ݾڤ��Ƥ��ޤ��� �������äơ����ץꥱ�������� PQrequestCancel ������ͤˤ�����餺��PQgetResult ��Ȥä��̾�η���ɤ߹��߽������³���ʤ���Ф����ޤ��� �⤷�������ͭ���Ǥ���С����ߤΥ��ޥ�ɤϴ֤�ʤ����Ǥ��졢���顼����̤Ȥ����֤�ޤ��� ��������˼��Ԥ������ʤĤޤ�Хå�����ɤ����Ǥ˥��ޥ�ɽ�����λ���Ƥ�������ˡ��ܤ˸������̤ϲ���ФƤ��ʤ��ʤ�ޤ���
�ʤ���������Υ��ޥ�ɤ��ȥ�������ΰ������ȡ����������ˤ�äƥȥ����������Τ����ܡ��Ȥ���ޤ���
PQrequestCancel �ϥ����ʥ�ϥ�ɥ餫�鵯ư���Ƥ�����פǤ��� �ޤ���ñ�� PQexec ���Ȥ߹�碌�ƻȤ����Ȥ��Ǥ��ޤ��� ���Ȥ��� psql �� PQexec���̤���ȯ�Ԥ��줿�䤤��碌�Υ���������SIGINT �����ʥ�ϥ�ɥ餫�� PQrequestCancel ��ư���뤳�Ȥǡ����ü��˼¹ԤǤ���褦�ˤʤäƤ��ޤ��� �ʤ�����³�������ץ�Ƥ��ʤ������뤤�ϥХå�����ɤ����ޥ�ɤν����Ƥ��ʤ����֤Ǥϡ�PQrequestCancel �θƤӽФ��ϲ��θ��̤⤢��ޤ���