mirror of
https://github.com/php/doc-ja.git
synced 2026-03-25 15:42:08 +01:00
git-svn-id: https://svn.php.net/repository/phpdoc/ja/trunk@322657 c90b9560-bf6c-de11-be94-00142212c4b1
180 lines
6.7 KiB
XML
180 lines
6.7 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 0d604bbc9d3b741d53e7fac26f5b24c306751e9a Maintainer: hirokawa Status: ready -->
|
|
<!-- CREDITS: shimooka -->
|
|
<refentry xml:id="function.sqlite-open" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<refnamediv>
|
|
<refname>sqlite_open</refname>
|
|
<refpurpose>
|
|
SQLiteデータベースをオープンする。データベースが存在しない場合は作
|
|
成する
|
|
</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsect1 role="description">
|
|
&reftitle.description;
|
|
<methodsynopsis>
|
|
<type>resource</type><methodname>sqlite_open</methodname>
|
|
<methodparam><type>string</type><parameter>filename</parameter></methodparam>
|
|
<methodparam choice="opt"><type>int</type><parameter>mode</parameter><initializer>0666</initializer></methodparam>
|
|
<methodparam choice="opt"><type>string</type><parameter role="reference">error_message</parameter></methodparam>
|
|
</methodsynopsis>
|
|
<para>&style.oop; (コンストラクタ):</para>
|
|
<constructorsynopsis>
|
|
<methodname>SQLiteDatabase::__construct</methodname>
|
|
<methodparam><type>string</type><parameter>filename</parameter></methodparam>
|
|
<methodparam choice="opt"><type>int</type><parameter>mode</parameter><initializer>0666</initializer></methodparam>
|
|
<methodparam choice="opt"><type>string</type><parameter role="reference">error_message</parameter></methodparam>
|
|
</constructorsynopsis>
|
|
<para>
|
|
SQLite データベースをオープン、
|
|
もしくは存在しない場合データベースを生成します。
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="parameters">
|
|
&reftitle.parameters;
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>filename</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
SQLite データベースのファイル名。もしこのファイルが存在しない場合、
|
|
SQLite はファイルを生成しようとします。
|
|
データを挿入したり、データベーススキーマを変更、
|
|
もしくはデータベースが存在しない場合にデータベースを生成する場合、
|
|
PHP はファイルに対する書き込み権限を持っている必要があります。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>mode</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
ファイルのモード。読み込み専用モードでデータベースをオープンするために
|
|
使用することを目的としています。現在、このパラメータは SQLite
|
|
ライブラリに無視されます。このモードのデフォルト値は、
|
|
8 進数値 <literal>0666</literal> で、これは推奨される値です。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>error_message</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
参照として渡され、エラーが発生した場合に
|
|
データベースがオープンできなかった原因を説明する
|
|
記述的なエラーメッセージを保持するために設定されます。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="returnvalues">
|
|
&reftitle.returnvalues;
|
|
<para>
|
|
成功時にリソース (データベースハンドル)、失敗時に &false; を返します。
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="examples">
|
|
&reftitle.examples;
|
|
<para>
|
|
<example>
|
|
<title><function>sqlite_open</function> の例</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) {
|
|
sqlite_query($db, 'CREATE TABLE foo (bar varchar(10))');
|
|
sqlite_query($db, "INSERT INTO foo VALUES ('fnord')");
|
|
$result = sqlite_query($db, 'select bar from foo');
|
|
var_dump(sqlite_fetch_array($result));
|
|
} else {
|
|
die($sqliteerror);
|
|
}
|
|
?>]]>
|
|
</programlisting>
|
|
</example>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="notes">
|
|
&reftitle.notes;
|
|
<tip>
|
|
<simpara>
|
|
Unix環境では、SQLiteはシステムコールfork()を使用するスクリプトの影
|
|
響を受け易いです。このようなスクリプトがある場合、
|
|
子プロセスを生成する前にハンドルを閉じ、子プロセスまたは親プロセス
|
|
から再度オープンすることが推奨されます。
|
|
この問題に関する詳細な情報については、
|
|
<literal>マルチスレッドおよびSQLite</literal>という名前のセクショ
|
|
ンにある <link
|
|
xlink:href="&url.sqlite.interface.c;">SQLiteライブラリへのC言語インターフェイス
|
|
</link> を参照してください。
|
|
</simpara>
|
|
</tip>
|
|
<tip>
|
|
<simpara>
|
|
NFSパーティションにマウントされたSQLiteデータベースを処理すること
|
|
は推奨されません。ロックに関してNFSは著しい問題があるので、
|
|
データベースを全くオープンすることさえできない可能性があります。ま
|
|
た、成功した場合でも、ロックに関する動作は予測できない結果を生む可
|
|
能性があります。
|
|
</simpara>
|
|
</tip>
|
|
<note>
|
|
<simpara>
|
|
SQLiteライブラリ バージョン2.8.2以降、
|
|
コンピュータのメモリ上にのみ存在するデータベースを作成するために
|
|
<parameter>filename</parameter>に<literal>:memory:</literal>を指定
|
|
することができます。
|
|
これは、メモリ上のデータベースは処理完了時に破棄されるため、
|
|
テンポラリな処理を行う場合には有用です。他のデータベースをロードし、
|
|
データを相互に移動したりクエリを実行したりするために
|
|
<literal>ATTACH DATABASE</literal> SQLステートメントと組み合わせる
|
|
場合にも有用です。
|
|
</simpara>
|
|
</note>
|
|
<note>
|
|
<simpara>
|
|
SQLite は &safemode; および open_basedir に対応しています。
|
|
</simpara>
|
|
</note>
|
|
</refsect1>
|
|
|
|
<refsect1 role="seealso">
|
|
&reftitle.seealso;
|
|
<para>
|
|
<simplelist>
|
|
<member><function>sqlite_popen</function></member>
|
|
<member><function>sqlite_close</function></member>
|
|
<member><function>sqlite_factory</function></member>
|
|
</simplelist>
|
|
</para>
|
|
</refsect1>
|
|
</refentry>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|