Skip to content

Commit 11a4956

Browse files
authored
Make PDO CUBRID DocBook 5.2 conformant (#3344)
Rewrite this table as a series of sections that describes each feature. And do some slight markup fixes at the same time. However, these docs are in a sad state and not up to our standard which is somewhat usual with PECL extension docs
1 parent f57352d commit 11a4956

File tree

1 file changed

+172
-156
lines changed

1 file changed

+172
-156
lines changed

reference/pdo_cubrid/reference.xml

Lines changed: 172 additions & 156 deletions
Original file line numberDiff line numberDiff line change
@@ -1,87 +1,98 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<reference xml:id="ref.pdo-cubrid" xmlns="http://docbook.org/ns/docbook">
3-
<?phpdoc extension-membership="pecl" ?>
4-
<title>CUBRID Functions (PDO_CUBRID)</title>
5-
<titleabbrev>CUBRID (PDO)</titleabbrev>
6-
<partintro>
7-
8-
<section xml:id="pdo-cubrid.intro">
9-
&reftitle.intro;
10-
<para>
11-
PDO_CUBRID is a driver that implements the <link linkend="intro.pdo">PHP Data Objects (PDO) interface</link> to
12-
enable access from PHP to CUBRID databases.
13-
</para>
2+
<reference xml:id="ref.pdo-cubrid" xmlns="http://docbook.org/ns/docbook"><?phpdoc extension-membership="pecl" ?>
3+
<title>CUBRID Functions (PDO_CUBRID)</title>
4+
<titleabbrev>CUBRID (PDO)</titleabbrev>
5+
<partintro>
6+
7+
<section xml:id="pdo-cubrid.intro">&reftitle.intro;
8+
<para>
9+
PDO_CUBRID is a driver that implements the
10+
<link linkend="intro.pdo">PHP Data Objects (PDO) interface</link>
11+
to enable access from PHP to CUBRID databases.
12+
</para>
13+
<note><para>
14+
Current version of PDO_CUBRID doesn't support persistent connection now.
15+
</para></note>
16+
</section>
17+
18+
<!-- Information found in configure.xml -->
19+
&reference.pdo-cubrid.configure;
20+
21+
<section xml:id="ref.pdo-cubrid.features">
22+
<title>PDO_CUBRID Features</title>
23+
24+
<section>
25+
<title>Scrollable cursors</title>
26+
<simpara>
27+
PDO_CUBRID supports scrollable cursors. The default cursor type is
28+
forward only, and you can use parameter driver_options in
29+
<methodname>PDO::prepare</methodname> to change cursor type.
30+
</simpara>
31+
</section>
32+
33+
<section>
34+
<title>Timeout</title>
35+
<simpara>
36+
PDO_CUBRID supports sql statement execution timeout setting;
37+
You can use <methodname>PDO::setAttribute</methodname> to set timeout value.
38+
</simpara>
39+
</section>
40+
41+
<section>
42+
<title>Autocommit_mode and Transaction</title>
43+
44+
<simpara>
45+
PDO_CUBRID supports both autocommit_mode and transaction, and
46+
autocommit_mode is enabled by default. You can use
47+
<methodname>PDO::setAttribute</methodname> to change its state.
48+
</simpara>
49+
50+
<simpara>
51+
If you use <methodname>PDO::beginTransaction</methodname> to begin a
52+
transaction, it will disable autocommit_mode automatically and
53+
restore it after <methodname>PDO::commit</methodname> or
54+
<methodname>PDO::rollBack</methodname>.
55+
</simpara>
56+
1457
<note>
15-
<para>
16-
Current version of PDO_CUBRID doesn't support persistent connection now.
17-
</para>
18-
</note>
58+
<simpara>
59+
Prior do disabling autocommit_mode
60+
any pending work is automatically committed.
61+
</simpara>
62+
</note>
1963
</section>
64+
65+
<section>
66+
<title>Multiple SQL Statements</title>
2067

21-
<!-- Information found in configure.xml -->
22-
&reference.pdo-cubrid.configure;
23-
24-
<section xml:id="ref.pdo-cubrid.features">
25-
<title>Features</title>
26-
<table>
27-
<title>PDO_CUBRID Features</title>
28-
<tgroup cols="2">
29-
<thead>
30-
<row>
31-
<entry>Feature</entry>
32-
<entry>Description</entry>
33-
</row>
34-
</thead>
35-
<tbody>
36-
<row>
37-
<entry>Scrollable cursors</entry>
38-
<entry>
39-
PDO_CUBRID supports scrollable cursors. The default cursor type is
40-
forward only, and you can use parameter driver_options in
41-
<function>PDO::prepare</function> to change cursor type.
42-
</entry>
43-
</row>
44-
<row>
45-
<entry>Timeout</entry>
46-
<entry>PDO_CUBRID supports sql statement execution timeout setting;
47-
You can use <function>PDO::setAttribute</function> to set timeout value.</entry>
48-
</row>
49-
<row>
50-
<entry>Autocommit_mode and Transaction</entry>
51-
<entry>
52-
PDO_CUBRID supports both autocommit_mode and transaction, and
53-
autocommit_mode is enabled by default. You can use
54-
<function>PDO::setAttribute</function> to change its state.
55-
56-
<para>
57-
If you use <function>PDO::beginTransaction</function> to begin a
58-
transaction, it will disable autocommit_mode automatically and
59-
restore it after <function>PDO::commit</function> or
60-
<function>PDO::rollBack</function>. Note that before disabling the
61-
autocommit_mode, any pending work is automatically committed.
62-
</para>
63-
</entry>
64-
</row>
65-
<row>
66-
<entry>Multiple SQL Statements</entry>
67-
<entry>PDO_CUBRID supports Multiple SQL statements. Multiple SQL
68-
statements are separated by semicolons (;)</entry>
69-
</row>
70-
<row>
71-
<entry>Schema Information</entry>
72-
<entry>PDO_CUBRID implements a function
73-
<function>PDO::cubrid_schema</function> to get schema information.
74-
</entry>
75-
</row>
76-
<row>
77-
<entry>LOBs</entry>
78-
<entry>PDO_CUBRID supports BLOB/CLOB data type. The LOB in PDO is
79-
represented as a stream, so you can insert LOBs by binding a stream,
80-
and get LOBs by reading a stream returned by CUBRID PDO. For example:
81-
82-
<para>
83-
<example><title>Insert LOBs in CUBRID PDO</title>
84-
<programlisting role="php">
68+
<simpara>
69+
PDO_CUBRID supports Multiple SQL statements.
70+
Multiple SQL statements are separated by semicolons (<literal>;</literal>).
71+
</simpara>
72+
</section>
73+
74+
<section>
75+
<title>Schema Information</title>
76+
77+
<simpara>
78+
PDO_CUBRID implements <methodname>PDO::cubrid_schema</methodname>
79+
to get schema information.
80+
</simpara>
81+
</section>
82+
83+
<section>
84+
<title>LOBs</title>
85+
86+
<simpara>
87+
PDO_CUBRID supports BLOB/CLOB data type. The LOB in PDO is
88+
represented as a stream, so you can insert LOBs by binding a stream,
89+
and get LOBs by reading a stream returned by CUBRID PDO.
90+
For example:
91+
</simpara>
92+
93+
<example>
94+
<title>Insert LOBs in CUBRID PDO</title>
95+
<programlisting role="php">
8596
<![CDATA[
8697
<?php
8798
$fp = fopen('lob_test.png', 'rb');
@@ -93,12 +104,12 @@ $ret = $stmt->bindParam(1, $fp, PDO::PARAM_LOB);
93104
$ret = $stmt->execute();
94105
?>
95106
]]>
96-
</programlisting>
97-
</example>
98-
</para>
99-
<para>
100-
<example><title>Fetch LOBs in CUBRID PDO</title>
101-
<programlisting role="php">
107+
</programlisting>
108+
</example>
109+
110+
<example>
111+
<title>Fetch LOBs in CUBRID PDO</title>
112+
<programlisting role="php">
102113
<![CDATA[
103114
<?php
104115
$sql_stmt = "SELECT content FROM lob_test WHERE name='lob_test.png'";
@@ -111,41 +122,47 @@ header("Content-Type: image/png");
111122
fpassthru($result[0]);
112123
?>
113124
]]>
114-
</programlisting>
115-
</example>
116-
</para>
117-
</entry>
118-
</row>
119-
<row>
120-
<entry>Column meta</entry>
121-
<entry>
122-
The <function>PDOStatement::getColumnMeta</function> in CUBRID PDO
123-
will return an associative array containing the following values:
124-
<simplelist>
125-
<member>type</member>
126-
<member>name</member>
127-
<member>table</member>
128-
<member>def</member>
129-
<member>precision</member>
130-
<member>scale</member>
131-
<member>not_null</member>
132-
<member>auto_increment</member>
133-
<member>unique_key</member>
134-
<member>multiple_key</member>
135-
<member>primary_key</member>
136-
<member>foreign_key</member>
137-
<member>reverse_index</member>
138-
<member>reverse_unique</member>
139-
</simplelist>
140-
</entry>
141-
</row>
142-
<row>
143-
<entry>Collection Data Type</entry>
144-
<entry>PDO_CUBRID supports SET/MULTISET/SEQUENCE data type. If you don't specify data type,
145-
the default data type is char,for example:
146-
<para>
147-
<example><title>Insert set in CUBRID PDO with default data type.</title>
148-
<programlisting role="php">
125+
</programlisting>
126+
</example>
127+
</section>
128+
129+
<section>
130+
<title>Column meta</title>
131+
132+
<para>
133+
The <methodname>PDOStatement::getColumnMeta</methodname> in CUBRID PDO
134+
will return an associative array containing the following values:
135+
<simplelist>
136+
<member>type</member>
137+
<member>name</member>
138+
<member>table</member>
139+
<member>def</member>
140+
<member>precision</member>
141+
<member>scale</member>
142+
<member>not_null</member>
143+
<member>auto_increment</member>
144+
<member>unique_key</member>
145+
<member>multiple_key</member>
146+
<member>primary_key</member>
147+
<member>foreign_key</member>
148+
<member>reverse_index</member>
149+
<member>reverse_unique</member>
150+
</simplelist>
151+
</para>
152+
</section>
153+
154+
<section>
155+
<title>Collection Data Type</title>
156+
157+
<simpara>
158+
PDO_CUBRID supports SET/MULTISET/SEQUENCE data type.
159+
If you don't specify data type, the default data type is char.
160+
For example:
161+
</simpara>
162+
163+
<example>
164+
<title>Insert set in CUBRID PDO with default data type.</title>
165+
<programlisting role="php">
149166
<![CDATA[
150167
<?php
151168
$conn_str ="cubrid:dbname=demodb;host=localhost;port=33000";
@@ -162,12 +179,12 @@ $ret = $stmt->execute();
162179
var_Dump($ret);
163180
?>
164181
]]>
165-
</programlisting>
166-
</example>
167-
</para>
168-
<para>
169-
<example><title>Specify data type when insert set in CUBRID PDO</title>
170-
<programlisting role="php">
182+
</programlisting>
183+
</example>
184+
185+
<example>
186+
<title>Specify data type when insert set in CUBRID PDO</title>
187+
<programlisting role="php">
171188
<![CDATA[
172189
<?php
173190
$conn_str ="cubrid:dbname=demodb;host=localhost;port=33000";
@@ -184,36 +201,35 @@ $ret = $stmt->execute();
184201
var_Dump($ret);
185202
?>
186203
]]>
187-
</programlisting>
188-
</example>
189-
</para>
190-
CUBRID Bind Data Types:(The fifth parameter of PDOStatement::bindParam):
191-
<simplelist>
192-
<member>CHAR</member>
193-
<member>STRING</member>
194-
<member>NCHAR</member>
195-
<member>VARNCHAR</member>
196-
<member>BIT</member>
197-
<member>VARBIT</member>
198-
<member>NUMERIC</member>
199-
<member>NUMBER</member>
200-
<member>INT</member>
201-
<member>SHORT</member>
202-
<member>BIGINT</member>
203-
<member>MONETARY</member>
204-
<member>FLOAT</member>
205-
<member>DOUBLE</member>
206-
<member>DATE</member>
207-
<member>TIME</member>
208-
<member>DATETIME</member>
209-
<member>TIMESTAMP</member>
210-
</simplelist>
211-
</entry>
212-
</row>
213-
</tbody>
214-
</tgroup>
215-
</table>
204+
</programlisting>
205+
</example>
206+
207+
<para>
208+
CUBRID Bind Data Types for the fifth parameter of
209+
<methodname>PDOStatement::bindParam</methodname>:
210+
<simplelist>
211+
<member>CHAR</member>
212+
<member>STRING</member>
213+
<member>NCHAR</member>
214+
<member>VARNCHAR</member>
215+
<member>BIT</member>
216+
<member>VARBIT</member>
217+
<member>NUMERIC</member>
218+
<member>NUMBER</member>
219+
<member>INT</member>
220+
<member>SHORT</member>
221+
<member>BIGINT</member>
222+
<member>MONETARY</member>
223+
<member>FLOAT</member>
224+
<member>DOUBLE</member>
225+
<member>DATE</member>
226+
<member>TIME</member>
227+
<member>DATETIME</member>
228+
<member>TIMESTAMP</member>
229+
</simplelist>
230+
</para>
216231
</section>
232+
</section>
217233

218234
<!-- Information found in constants.xml -->
219235
&reference.pdo-cubrid.constants;

0 commit comments

Comments
 (0)