<?xml version='1.0' encoding='utf-8'?>
<pod xmlns="http://axkit.org/ns/2000/pod2xml">
<head>
	<title>DBD::PgPP - Perlだけで記述したDBI用PostgreSQLドライバ</title>
</head>
<sect1>
<title>SYNOPSIS</title>
<verbatim><![CDATA[
use DBI;
]]></verbatim>
<verbatim><![CDATA[
my $dbh = DBI->connect('dbi:PgPP:dbname=$dbname', '', ''');
]]></verbatim>
<verbatim><![CDATA[
# 詳しくはDBIモジュールのドキュメントを参照してください
]]></verbatim>
</sect1>
<sect1>
<title>DESCRIPTION</title>
<para>
DBD::PgPPはPerlだけで記述したPostgreSQLデータベース用のクライアントイ
ンターフェイスです。このモジュールはPostgreSQLのサーバとクライアントが
交わすネットワークプロトコルを実装しているので、<strong>libpq</strong> など他の
PostgreSQLクライアントライブラリを必要としません。つまりこのモジュール
はPostgreSQLが移植されていないOSから、PostgreSQLと通信できるのです。
</para>
</sect1>
<sect1>
<title>MODULE DOCUMENTATION</title>
<para>
このドキュメントはDBD::PgPPに特化した部分や制限について説明するもので、
すべてを網羅するリファレンスではありません。このドキュメントを読む前に
まずDBIモジュールのマニュアルを読んでください。
</para>
</sect1>
<sect1>
<title>THE DBI CLASS</title>
<sect2>
<title>DBI Class Methods</title>
<list>
<item><itemtext><strong>connect</strong></itemtext>
<para>
データベースに接続するための最低限のパラメータは次のとおりです:
</para>
<verbatim><![CDATA[
$dbh = DBI->connect('dbi:PgPP:dbname=$dbname', '', '');
]]></verbatim>
<para>
このパラメータはユーザ認証を必要としないlocalhostの$dbnameデータベース
に接続します。これはPostgreSQLのデフォルトの設定で利用できます。
</para>
<para>
connect()に関するパラメータは次のとおりです:
</para>
<verbatim><![CDATA[
$dbh = DBI->connect(
    "dbi:PgPP:dbname=$dbname",
    $username, $password
);
]]></verbatim>
<verbatim><![CDATA[
$dbh = DBI->connect(
    "dbi:PgPP:dbname=$dbname;host=$host;port=$port",
    $username, $password
);
]]></verbatim>
<verbatim><![CDATA[
$dbh = DBI->connect(
    "dbi:PgPP:dbname=$dbname;path=$path;port=$port",
    $username, $password
);
]]></verbatim>
<verbatim><![CDATA[
パラメータ | デフォルト値
-----------+-------------------
dbname     | current userid
host       | localhost
port       | 5432
path       | /tmp
debug      | undef
]]></verbatim>
<para>
<emphasis>host</emphasis>パラメータを使用する場合は、対象となるホストの <filename>postmaster</filename> を
<code>-i</code>オプション(TCP/IPソケット)で起動しておく必要があります。
</para>
<para>
ユーザ名とパスワードを使用する認証は、サーバ側の<filename>pg_hba.conf</filename>で適切な
設定を行う必要があります。認証方法については<emphasis>pg_hba.conf</emphasis>と<emphasis>pg_passwd</emphasis>
のマニュアルページを参照してください。
</para>
</item>
</list>
</sect2>
</sect1>
<sect1>
<title>SUPPORT OPERATING SYSTEM</title>
<para>
このモジュールは次のOSでテストが完了しています。
</para>
<list>
<item><itemtext>Mac OS 9</itemtext>
<para>
with MacPerl5.6.1r1 built for PowerPC
</para>
</item>
<item><itemtext>Mac OS X</itemtext>
<para>
with perl v5.6.0 built for darwin
</para>
</item>
<item><itemtext>Windows2000</itemtext>
<para>
with ActivePerl5.6.1 build631.
</para>
</item>
<item><itemtext>FreeBSD 4.6</itemtext>
<para>
with perl v5.6.1 built for i386-freebsd
</para>
</item>
<item><itemtext>FreeBSD 3.4</itemtext>
<para>
with perl v5.6.1 built for i386-freebsd
</para>
<para>
with perl v5.005_03 built for i386-freebsd
</para>
</item>
<item><itemtext>Linux</itemtext>
<para>
with perl v5.005_03 built for ppc-linux
</para>
</item>
<item><itemtext>Solaris 2.6 (SPARC)</itemtext>
<para>
with perl5.6.1 built for sun4-solaris.
</para>
<para>
with perl5.004_04 built for sun4-solaris.
</para>
<para>
Solaris2.6上のperl5.004_04は <emphasis>make test</emphasis>で失敗しますが使用することが
できます。
</para>
</item>
</list>
</sect1>
<sect1>
<title>LIMITATION</title>
<list>
<item><itemtext>一部のFreeBSDでは'crypt'認証は使用できません。</itemtext>
</item>
<item><itemtext>'Kerberos v4/5'認証は使用できません。</itemtext>
</item>
<item><itemtext>SSL接続は使用できません。</itemtext>
</item>
<item><itemtext>BLOBデータを扱うことはできません。</itemtext>
</item>
</list>
</sect1>
<sect1>
<title>DEPENDENCIES</title>
<para>
このモジュールは次のモジュールを必要とします:
</para>
<verbatim><![CDATA[
L<DBI>, L<IO::Socket>
]]></verbatim>
</sect1>
<sect1>
<title>TODO</title>
<list>
<item><itemtext>Pure perlのDESベースのcrypt関数を追加する</itemtext>
</item>
<item><itemtext>Authen::Krb4 &amp; Authen::Krb5を使用してKerberos v4/5認証をサポートする</itemtext>
</item>
<item><itemtext>IO::Socket::SSL(またはNet::SSLeay)を使用してSSL接続をサポートする</itemtext>
</item>
<item><itemtext>BLOBデータををサポートする</itemtext>
</item>
</list>
</sect1>
<sect1>
<title>SEE ALSO</title>
<para>
<link xref='DBI'>DBI</link>, <link xref='{tag:xlink uri='http:#/developer.postgresql.org/docs/postgres/protocol.html'>http:#/developer.postgresql.org/docs/postgres/protocol.html</xlink>'}<xlink uri='http://developer.postgresql.org/docs/postgres/protocol.html'>http://developer.postgresql.org/docs/postgres/protocol.html</xlink></link>
</para>
</sect1>
<sect1>
<title>AUTHOR</title>
<para>
Hiroyuki OYAMA &lt;oyama@cpan.jp&gt;
</para>
</sect1>
<sect1>
<title>COPYRIGHT AND LICENCE</title>
<para>
Copyright (C) 2002 Hiroyuki OYAMA. Japan. All rights reserved.
</para>
<para>
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
</para>
</sect1>
</pod>
