tony2001 Mon Mar 20 13:39:56 2006 UTC
Added files:
/phpdoc/en/reference/oci8/functions oci-bind-array-by-name.xml
Modified files:
/phpdoc/en/reference/oci8 constants.xml
Log:
add documentation for oci_bind_array_by_name() and new constants
http://cvs.php.net/viewcvs.cgi/phpdoc/en/reference/oci8/constants.xml?r1=1.6&r2=1.7&diff_format=u
Index: phpdoc/en/reference/oci8/constants.xml
diff -u phpdoc/en/reference/oci8/constants.xml:1.6
phpdoc/en/reference/oci8/constants.xml:1.7
--- phpdoc/en/reference/oci8/constants.xml:1.6 Tue Sep 6 20:18:26 2005
+++ phpdoc/en/reference/oci8/constants.xml Mon Mar 20 13:39:56 2006
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.6 $ -->
+<!-- $Revision: 1.7 $ -->
<section id="oci8.constants">
&reftitle.constants;
&extension.constants;
@@ -231,6 +231,156 @@
</varlistentry>
<varlistentry>
<term>
+ <constant>SQLT_NUM</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ NUMBER.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_INT</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ INTEGER.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_AFC</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ CHAR.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_CHR</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ VARCHAR2.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_VCS</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ VARCHAR.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_AVC</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ CHARZ.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_STR</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ STRING.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_LVC</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ LONG VARCHAR.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_FLT</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ FLOAT.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_LNG</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_ODT</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ Used with <function>oci_bind_array_by_name</function> to bind arrays of
+ LONG.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_BDOUBLE</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <constant>SQLT_BFLOAT</constant>
+ (<type>integer</type>)
+ </term>
+ <listitem>
+ <simpara>
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
<constant>OCI_FETCHSTATEMENT_BY_COLUMN</constant>
(<type>integer</type>)
</term>
http://cvs.php.net/viewcvs.cgi/phpdoc/en/reference/oci8/functions/oci-bind-array-by-name.xml?view=markup&rev=1.1
Index: phpdoc/en/reference/oci8/functions/oci-bind-array-by-name.xml
+++ phpdoc/en/reference/oci8/functions/oci-bind-array-by-name.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<refentry id="function.oci-bind-array-by-name">
<refnamediv>
<refname>oci_bind_array_by_name</refname>
<refpurpose>
Binds PHP array to Oracle PL/SQL array by name
</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<methodsynopsis>
<type>bool</type><methodname>oci_bind_array_by_name</methodname>
<methodparam><type>resource</type><parameter>stmt</parameter></methodparam>
<methodparam><type>string</type><parameter>name</parameter></methodparam>
<methodparam><type>array</type><parameter
role="reference">var_array</parameter></methodparam>
<methodparam><type>int</type><parameter>max_table_length</parameter></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>max_item_length</parameter></methodparam>
<methodparam
choice="opt"><type>int</type><parameter>type</parameter></methodparam>
</methodsynopsis>
<note>
<para>
This function is available since OCI8 release 1.2 and PHP release 5.1.2.
</para>
</note>
<para>
<function>oci_bind_array_by_name</function> binds the PHP array
<parameter>var_array</parameter> to the Oracle placeholder
<parameter>name</parameter>, which points to Oracle PL/SQL array.
Whether it will be used for input or output will be determined at
run-time. The <parameter>max_table_length</parameter>
parameter sets the maximum length both for incoming and result arrays.
Parameter <parameter>max_item_length</parameter> sets maximum length for
array items. If <parameter>max_item_length</parameter> was not specified
or equals to -1, <function>oci_bind_array_by_name</function> will use
find the longest element in the incoming array and will use it as
maximum length for array items. <parameter>type</parameter> parameter
should be used to set the type of PL/SQL array items. See list of
available types below.
</para>
<para>
<itemizedlist>
<listitem>
<para>
<constant>SQLT_NUM</constant> - for arrays of NUMBER.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_INT</constant> - for arrays of INTEGER (Note: INTEGER
it is actually a synonym for NUMBER(38), but
<constant>SQLT_NUM</constant> type won't work in this case even
though they are synonyms).
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_FLT</constant> - for arrays of FLOAT.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_AFC</constant> - for arrays of CHAR.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_CHR</constant> - for arrays of VARCHAR2.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_VCS</constant> - for arrays of VARCHAR.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_AVC</constant> - for arrays of CHARZ.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_STR</constant> - for arrays of STRING.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_LVC</constant> - for arrays of LONG VARCHAR.
</para>
</listitem>
<listitem>
<para>
<constant>SQLT_ODT</constant> - for arrays of DATE.
</para>
</listitem>
</itemizedlist>
</para>
<para>
<example>
<title><function>oci_bind_array_by_name</function>example</title>
<programlisting role="php">
<![CDATA[
<?php
$c = oci_connect("scott", "tiger");
$create = "CREATE TABLE bind_example(name VARCHAR(20))";
$statement = oci_parse($c, $create);
oci_execute($statement);
$create_pkg = "
CREATE OR REPLACE PACKAGE ARRAYBINDPKG1 AS
TYPE ARRTYPE IS TABLE OF VARCHAR(20) INDEX BY BINARY_INTEGER;
PROCEDURE iobind(c1 IN OUT ARRTYPE);
END ARRAYBINDPKG1;";
$statement = oci_parse($c, $create_pkg);
oci_execute($statement);
$create_pkg_body = "
CREATE OR REPLACE PACKAGE BODY ARRAYBINDPKG1 AS
CURSOR CUR IS SELECT name FROM bind_example;
PROCEDURE iobind(c1 IN OUT ARRTYPE) IS
BEGIN
FOR i IN 1..5 LOOP
INSERT INTO bind_example VALUES (c1(i));
END LOOP;
IF NOT CUR%ISOPEN THEN
OPEN CUR;
END IF;
FOR i IN REVERSE 1..5 LOOP
FETCH CUR INTO c1(i);
IF CUR%NOTFOUND THEN
CLOSE CUR;
EXIT;
END IF;
END LOOP;
END iobind;
END ARRAYBINDPKG1;";
$statement = oci_parse($c, $create_pkg_body);
oci_execute($statement);
$statement = oci_parse($c, "BEGIN ARRAYBINDPKG1.iobind(:c1); END;");
$array = array("one", "two", "three", "four", "five");
oci_bind_array_by_name($statement, ":c1", $array, 5, -1, SQLT_CHR);
oci_execute($statement);
var_dump($array);
?>
]]>
</programlisting>
</example>
</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
indent-tabs-mode:nil
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
-->