File: fbsql-query.xml

package info (click to toggle)
php-doc 20061001-1
  • links: PTS
  • area: non-free
  • in suites: etch, etch-m68k
  • size: 45,764 kB
  • ctags: 1,611
  • sloc: xml: 502,485; php: 7,645; cpp: 500; makefile: 297; perl: 161; sh: 141; awk: 28
file content (123 lines) | stat: -rw-r--r-- 4,310 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.5 $ -->
<!-- splitted from ./en/functions/fbsql.xml, last change in rev 1.1 -->
  <refentry id="function.fbsql-query">
   <refnamediv>
    <refname>fbsql_query</refname>
    <refpurpose>Send a FrontBase query</refpurpose>
   </refnamediv>
   <refsect1>
    &reftitle.description;
     <methodsynopsis>
      <type>resource</type><methodname>fbsql_query</methodname>
      <methodparam><type>string</type><parameter>query</parameter></methodparam>
      <methodparam choice="opt"><type>resource</type><parameter>link_identifier</parameter></methodparam>
      <methodparam choice="opt"><type>int</type><parameter>batch_size</parameter></methodparam>
     </methodsynopsis>
    <para> 
     <function>fbsql_query</function> sends a query to the currently
     active database on the server that's associated with the
     specified link identifier.  If
     <parameter>link_identifier</parameter> isn't specified, the last
     opened link is assumed.  If no link is open, the function tries
     to establish a link as if <function>fbsql_connect</function> was
     called with no arguments, and use it.
    </para>
    <note>
     <para>
      The query string shall always end with a semicolon.
     </para>
    </note>
    <para>
     <function>fbsql_query</function> returns &true; (non-zero) or &false;
     to indicate whether or not the query succeeded.  A return value
     of &true; means that the query was legal and could be executed by
     the server.  It does not indicate anything about the number of
     rows affected or returned. It is perfectly possible for a query
     to succeed but affect no rows or return no rows.
    </para>
    <para>
     The following query is syntactically invalid, so
     <function>fbsql_query</function> fails and returns &false;:
     <example>
      <title><function>fbsql_query</function> example</title>
      <programlisting role="php">
<![CDATA[
<?php
$result = fbsql_query("SELECT * WHERE 1=1")
    or die ("Invalid query");
?>
]]>
      </programlisting>
     </example>
    </para>
    <para>
     The following query is semantically invalid if
     <literal>my_col</literal> is not a column in the table
     <literal>my_tbl</literal>, so <function>fbsql_query</function>
     fails and returns &false;:
     <example>
      <title><function>fbsql_query</function> example</title>
      <programlisting role="php">
<![CDATA[
<?php
$result = fbsql_query ("SELECT my_col FROM my_tbl")
    or die ("Invalid query");
?>
]]>
      </programlisting>
     </example>
    </para>
    <para>
     <function>fbsql_query</function> will also fail and return
     &false; if you don't have permission to access the table(s)
     referenced by the query.
    </para>
    <para>
     Assuming the query succeeds, you can call
     <function>fbsql_num_rows</function> to find out how many rows
     were returned for a SELECT statement or
     <function>fbsql_affected_rows</function> to find out how many
     rows were affected by a DELETE, INSERT, REPLACE, or UPDATE
     statement.
    </para>
    <para>
     For SELECT statements, <function>fbsql_query</function> returns a
     new result identifier that you can pass to
     <function>fbsql_result</function>.  When you are done with the
     result set, you can free the resources associated with it by
     calling <function>fbsql_free_result</function>.  Although, the
     memory will automatically be freed at the end of the script's
     execution.
    </para>
    <para>
     See also: <function>fbsql_affected_rows</function>,
     <function>fbsql_db_query</function>,
     <function>fbsql_free_result</function>,
     <function>fbsql_result</function>,
     <function>fbsql_select_db</function>, and
     <function>fbsql_connect</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
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
-->