Lazarus DB Faq/ja
From Lazarus-ccr
Deutsch (de) English (en) Español (es) Français (fr) Italiano (it) Japanese (ja) Portuguese (pt) Русский (ru) Slovensky (sk) 中文(简体)(zh_CN)
Contents |
[edit] General
このFAQはLazarusでのデータベースプログラミングに関するものです。
[edit] どうしたら、もっと他のFAQを見つけられますか?
オフィシャルWebサイトwww.lazarus.freepascal.org.を見てください。(こちら)
[edit] どうしたら、データベースコンポーネントを見つけられますか?
現在、SQLdbコンポーネントはLazarusのパッケージになっていますので、インストールさえすればよいです。 [$LazarusDir]/componentsフォルダをみると、SQLdbのサブディレクトリがあるでしょう。sqldblaz.lpkをインストールすると、MySQL,Interbase/Firebird, PostgresのDBサーバへ接続することができます。
ここにパッケージインストールのヘルプがあります。
[edit] 上記のほかのコンポーネントはありますか?
はい。ZEOS componentsが、すでにLazarusへポーティングされています。
ZEOSDBO_Rework を、 ZEOS cvsから、ダウンロードする必要があります。
このチュートリアルは、Zeosを見てください。
Pascal Data Objectsも、同様にDelphiとFPC2.0で動作します。
[edit] IB / FB (Interbase,Firebirdについて)
[edit] Linuxから、Windowsへのサーバーへはどうやって接続するのでしょうか。
LinuxクライアントからWindowsサーバーのデータベースへの正しいパスをきちんと書く方法は、あまり一般的ではありません。
あなたがFirebirdをF:\Program Files\firebird\にインストールしたとします。 この場合、サンプルのデータベースであるemployee.fdbが、F:\Program Files\firebird\examples\ にインストールされています。また、サーバーのIPアドレスが 192.168.2.100であったと仮定しましょう。
そうすると、IBConnectionでは、次のようにデータベース名を記述すると、きちんと接続するでしょう。
192.168.2.100:F:\Program Files\firebird\examples\employee.fdb
注意:hostnameプロパティには、値を設定する必要はありません。
[edit] MySQL
[edit] SQLdbでは、MySQLのどのバージョンがサポートされていますか?
現在、SQLdbコンポーネントでは、MySQL4.0 、MySQL4.1、そしてMySQL5.0をサポートしています。 クライアントライブラリバージョンに対して、正しい接続コンポーネントを使おうとしているか、確認してください。 もし、MySQL4.1をインストールしてクライアントライブラリを利用しているならば、TMySQL41Connectionコンポーネントを使ってください。(サーバーが4.0や5.0であっても、クライアントライブラリのバージョンに対応したコンポーネントを利用します。)
[edit] Pascal Data Objectsの場合
現在は排他的な状況です。MySQL4.1と5.0で導入された機能(プリペアード文、バインディング、ストアドプロシジャ)は、Pascal Data Objectのdatabase APIでサポートされています。Pascal Data Objectsは、PHP Data Objectsからヒントを得ています。 この新しいAPIを使うための、すべてのコードと文書は、Trac wikiから利用ができます。
https://trac.synsport.com:8000/index.php/pdo/wiki (username/password is guest/guest)
[edit] PostgreSQL
PostgreSQLデータベースサーバへ接続するには、TPQConnectionコンポーネントを使います。 このコンポーネントはPostgreSQLのlibpqコネクションライブラリを利用しています。 [1], ですから、簡単にほとんどの(訳注:バージョンの?)PostgreSQLデータベースに接続できます。 しかし、このコンポーネントは、下記の接続オプションはサポートしていません。
- Port
- ClientEncoding
このほかにも、接続していないパラメータがある可能性があります。
--Jrmarino 11:28, 13 Mar 2006 (CET)
