cvs: peardoc /en/core db.xml
| From: | Fabien MARTY | Date: | Wed, 12 Jun 2002 23:14:56 +0000 |
| Subject: | cvs: peardoc /en/core db.xml | ||
| Groups: | php.pear.cvs | ||
| Request: | Send a blank email to pear-cvs+get-4589@lists.php.net to get a copy of this message | ||
fab Wed Jun 12 19:14:56 2002 EDT
Modified files:
/peardoc/en/core db.xml
Log:
add of core.db.autoprepare
Index: peardoc/en/core/db.xml
diff -u peardoc/en/core/db.xml:1.19 peardoc/en/core/db.xml:1.20
--- peardoc/en/core/db.xml:1.19 Thu Mar 21 06:12:58 2002
+++ peardoc/en/core/db.xml Wed Jun 12 19:14:56 2002
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="iso-8859-1" ?>
-<!-- $Revision: 1.19 $ -->
+<!-- $Revision: 1.20 $ -->
<reference id="core.db">
<title>PEAR DB: a unified API for accessing SQL-databases</title>
<titleabbrev>DB</titleabbrev>
@@ -1099,6 +1099,96 @@
<listitem>
<para>
<parameter>$query</parameter> - the query to prepare
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ <para>
+ Returns
+ <itemizedlist>
+ <listitem>
+ <para>
+ <parameter>resource</parameter> - the query handle
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </refsect1>
+ </refentry>
+
+ <refentry id="core.db.autoprepare">
+ <refnamediv>
+ <refname>DB::autoPrepare()</refname>
+ <refpurpose>Build automaticaly an insert or an update sql query and
+ call prepare() with it.</refpurpose>
+ </refnamediv>
+ <refsect1 id="core.db.autoprepare.desc">
+ <title>Description</title>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>resource <function>autoPrepare</function></funcdef>
+ <paramdef>string <parameter>$table</parameter></paramdef>
+ <paramdef>array <parameter>$table_fields</parameter></paramdef>
+ <paramdef>integer <parameter>$mode</parameter></paramdef>
+ <paramdef>string
<parameter><optional>$where</optional></parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ <para>
+ <function>autoPrepare</function> requires an ordered array like :
+ <programlisting>
+ <![CDATA[
+array('field1', 'field2', 'field3', ...)
+ ]]>
+ </programlisting>
+ and will make an sql query like (insert mode) :
+ <programlisting>
+ <![CDATA[
+"INSERT INTO $table (field1,field2,field3,...) VALUES (?,?,?)"
+ ]]>
+ </programlisting>
+ or (update mode) :
+ <programlisting>
+ <![CDATA[
+"UPDATE $table SET field1=?,field2=?,field3=?,... WHERE $where"
+ ]]>
+ </programlisting>
+ Then, prepare() is called with this query.
+ </para>
+ <para>
+ There is two modes :
+ <simplelist>
+ <member>
+ <parameter>DB_AUTOQUERY_INSERT</parameter> - build insert queries
+ </member>
+ <member>
+ <parameter>DB_AUTOQUERY_UPDATE</parameter> - build update queries
+ </member>
+ </simplelist>
+ Be carefull, when you make update queries, if you don't specify
<parameter>$where</parameter>
+ argument, all the records will be updated.
+ </para>
+ <para>
+ Parameter
+ <itemizedlist>
+ <listitem>
+ <para>
+ <parameter>$table</parameter> - name of the table
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <parameter>$table_fields</parameter> - ordered array containing the fields names
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <parameter>$mode</parameter> - type of query to make
(<parameter>DB_AUTOQUERY_INSERT</parameter>
+ or <parameter>DB_AUTOQUERY_UPDATE</parameter>)
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <parameter><optional>$where</optional></parameter> - in case of
update queries, this string will be put after the sql WHERE statement
</para>
</listitem>
</itemizedlist>