Files
doc-fr/reference/sqlite/functions/sqlite-open.xml
Yannick Torres 789557d1d7 sync with EN version
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@166819 c90b9560-bf6c-de11-be94-00142212c4b1
2004-08-19 13:38:41 +00:00

122 lines
4.5 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.9 $ -->
<!-- EN-Revision: 1.11 Maintainer: yannick Status: ready -->
<refentry id="function.sqlite-open">
<refnamediv>
<refname>sqlite_open</refname>
<refpurpose>Ouvre une base SQLite et la crée si elle n'existe pas</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<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></methodparam>
<methodparam choice="opt"><type>string</type><parameter>&amp;error_message</parameter></methodparam>
</methodsynopsis>
<para>
<function>sqlite_open</function> retourne une ressource de connexion SQLite,
ou &false; en cas d'erreur.
</para>
<para>
Le paramètre <parameter>filename</parameter> est le nom de la base. Cela peut
être un nom relatif ou absolu, que SQLite va utiliser pour stocker vos
données. Si le fichier n'existe pas, SQLite va tenter de le créer. Vous
<emphasis>DEVEZ</emphasis> avoir les droits d'écriture si vous voulez
faire des insertions de données, ou modifier votre schéma de base.
</para>
<para>
Le paramètre <parameter>mode</parameter> spécifie le mode d'ouverture du fichier,
et il permet notamment d'ouvrir la base en mode lecture seule. Actuellement,
ce paramètre est ignoré par la bibliothèque SQLite. La valeur par défaut pour
ce paramètre est la valeur octale <literal>0666</literal>. C'est la valeur recommandée
si vous avez besoin d'utiliser le paramètre <parameter>errmessage</parameter>.
</para>
<para>
<parameter>errmessage</parameter> est passé par référence, et il contient
un message d'erreur descriptif, expliquant pourquoi la base n'a pu être
ouverte.
</para>
<para>
<example>
<title>Exemple avec <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>
<tip>
<simpara>
Sur les plates-formes Unix, SQLite est sensible aux scripts qui utilisent
la fonction système <literal>fork()</literal>. Si vous avez un tel script,
il est recommandé que vous refermiez la ressource avant de faire le fork,
et de l'ouvrir à nouveau dans le processus fils. Pour plus d'informations sur
ce problème, voyez <ulink url="&url.sqlite.interface.c;"><literal>
The C language interface to the SQLite library</literal></ulink>
dans la section intitulée
<literal>Multi-Threading And SQLite</literal> (en anglais).
</simpara>
</tip>
<tip>
<simpara>
Il n'est pas recommandé d'utiliser des bases de données SQLite montées
sur des partitions NFS. Comme NFS est très mauvais pour assurer le verrouillage
des fichiers, vous pourriez ne pas ouvrir les bases, et si vous réussissez,
le verrouillage de la base sera indéfini.
</simpara>
</tip>
<note>
<simpara>
Depuis SQLite version 2.8.2, vous pouvez spécifier <literal>:memory:</literal>
comme valeur de <parameter>filename</parameter> pour créer une base
qui sera installée en mémoire vive, sur le serveur. C'est très pratique
pour des traitements temporaires, car la base en mémoire sera détruire
dès que le script sera terminé. Cela peut aussi être utile, lorsqu'utilisé
conjointement avec la commande SQL <literal>ATTACH DATABASE</literal>,
pour charger d'autres bases, et faire des requêtes liées.
</simpara>
</note>
<note>
<simpara>
SQLite prend en compte le &safemode; et l'option open_basedir.
</simpara>
</note>
<para>
Voir aussi
<function>sqlite_popen</function>,
<function>sqlite_close</function> et
<function>sqlite_query</function>.
</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:"../../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
-->