Corrected spelling error
[lhc/web/wiklou.git] / includes / DatabaseFunctions.php
1 <?php
2 # $Id$
3
4 # Backwards compatibility wrapper for Database.php
5
6 # I imagine this file will eventually become a backwards
7 # compatibility wrapper around a load balancer object, and
8 # the load balancer will finally call Database, which will
9 # represent a single connection
10
11 # Note: $wgDatabase has ceased to exist. Destroy all references.
12
13 $wgIsMySQL=false;
14 $wgIsPg=false;
15
16 if ($wgDBtype=="mysql") {
17 require_once( "Database.php" );
18 $wgIsMySQL=true;
19 } elseif ($wgDBtype=="pgsql") {
20 require_once( "DatabasePostgreSQL.php" );
21 $wgIsPg=true;
22 }
23
24
25 # Usually aborts on failure
26 # If errors are explicitly ignored, returns success
27 function wfQuery( $sql, $db, $fname = "" )
28 {
29 if ( !is_numeric( $db ) ) {
30 # Someone has tried to call this the old way
31 $wgOut->fatalError( wfMsgNoDB( "wrong_wfQuery_params", $db, $sql ) );
32 }
33 $c =& wfGetDB( $db );
34 if ( $c !== false ) {
35 return $c->query( $sql, $fname );
36 } else {
37 return false;
38 }
39 }
40
41 function &wfGetDB( $db = DB_LAST )
42 {
43 global $wgLoadBalancer;
44 return $wgLoadBalancer->getConnection( $db );
45 }
46
47 # Turns buffering of SQL result sets on (true) or off (false). Default is
48 # "on" and it should not be changed without good reasons.
49 # Returns the previous state.
50
51 function wfBufferSQLResults( $newstate, $dbi = DB_LAST )
52 {
53 $db =& wfGetDB( $dbi );
54 if ( $db !== false ) {
55 return $db->setBufferResults( $newstate );
56 } else {
57 return NULL;
58 }
59 }
60
61 # Turns on (false) or off (true) the automatic generation and sending
62 # of a "we're sorry, but there has been a database error" page on
63 # database errors. Default is on (false). When turned off, the
64 # code should use wfLastErrno() and wfLastError() to handle the
65 # situation as appropriate.
66 # Returns the previous state.
67
68 function wfIgnoreSQLErrors( $newstate, $dbi = DB_LAST )
69 {
70 $db =& wfGetDB( $dbi );
71 if ( $db !== false ) {
72 return $db->setIgnoreErrors( $newstate );
73 } else {
74 return NULL;
75 }
76 }
77
78 function wfFreeResult( $res, $dbi = DB_LAST )
79 {
80 $db =& wfGetDB( $dbi );
81 if ( $db !== false ) {
82 $db->freeResult( $res );
83 return true;
84 } else {
85 return false;
86 }
87 }
88
89 function wfFetchObject( $res, $dbi = DB_LAST )
90 {
91 $db =& wfGetDB( $dbi );
92 if ( $db !== false ) {
93 return $db->fetchObject( $res, $dbi = DB_LAST );
94 } else {
95 return false;
96 }
97 }
98
99 function wfFetchRow( $res, $dbi = DB_LAST )
100 {
101 $db =& wfGetDB( $dbi );
102 if ( $db !== false ) {
103 return $db->fetchRow ( $res, $dbi = DB_LAST );
104 } else {
105 return false;
106 }
107 }
108
109 function wfNumRows( $res, $dbi = DB_LAST )
110 {
111 $db =& wfGetDB( $dbi );
112 if ( $db !== false ) {
113 return $db->numRows( $res, $dbi = DB_LAST );
114 } else {
115 return false;
116 }
117 }
118
119 function wfNumFields( $res, $dbi = DB_LAST )
120 {
121 $db =& wfGetDB( $dbi );
122 if ( $db !== false ) {
123 return $db->numFields( $res );
124 } else {
125 return false;
126 }
127 }
128
129 function wfFieldName( $res, $n, $dbi = DB_LAST )
130 {
131 $db =& wfGetDB( $dbi );
132 if ( $db !== false ) {
133 return $db->fieldName( $res, $n, $dbi = DB_LAST );
134 } else {
135 return false;
136 }
137 }
138
139 function wfInsertId( $dbi = DB_LAST )
140 {
141 $db =& wfGetDB( $dbi );
142 if ( $db !== false ) {
143 return $db->insertId();
144 } else {
145 return false;
146 }
147 }
148
149 function wfDataSeek( $res, $row, $dbi = DB_LAST )
150 {
151 $db =& wfGetDB( $dbi );
152 if ( $db !== false ) {
153 return $db->dataSeek( $res, $row );
154 } else {
155 return false;
156 }
157 }
158
159 function wfLastErrno( $dbi = DB_LAST )
160 {
161 $db =& wfGetDB( $dbi );
162 if ( $db !== false ) {
163 return $db->lastErrno();
164 } else {
165 return false;
166 }
167 }
168
169 function wfLastError( $dbi = DB_LAST )
170 {
171 $db =& wfGetDB( $dbi );
172 if ( $db !== false ) {
173 return $db->lastError();
174 } else {
175 return false;
176 }
177 }
178
179 function wfAffectedRows( $dbi = DB_LAST )
180 {
181 $db =& wfGetDB( $dbi );
182 if ( $db !== false ) {
183 return $db->affectedRows();
184 } else {
185 return false;
186 }
187 }
188
189 function wfLastDBquery( $dbi = DB_LAST )
190 {
191 $db =& wfGetDB( $dbi );
192 if ( $db !== false ) {
193 return $db->lastQuery();
194 } else {
195 return false;
196 }
197 }
198
199 function wfSetSQL( $table, $var, $value, $cond, $dbi = DB_WRITE )
200 {
201 $db =& wfGetDB( $dbi );
202 if ( $db !== false ) {
203 return $db->set( $table, $var, $value, $cond );
204 } else {
205 return false;
206 }
207 }
208
209 function wfGetSQL( $table, $var, $cond="", $dbi = DB_LAST )
210 {
211 $db =& wfGetDB( $dbi );
212 if ( $db !== false ) {
213 return $db->get( $table, $var, $cond );
214 } else {
215 return false;
216 }
217 }
218
219 function wfFieldExists( $table, $field, $dbi = DB_LAST )
220 {
221 $db =& wfGetDB( $dbi );
222 if ( $db !== false ) {
223 return $db->fieldExists( $table, $field );
224 } else {
225 return false;
226 }
227 }
228
229 function wfIndexExists( $table, $index, $dbi = DB_LAST )
230 {
231 $db =& wfGetDB( $dbi );
232 if ( $db !== false ) {
233 return $db->indexExists( $table, $index );
234 } else {
235 return false;
236 }
237 }
238
239 function wfInsertArray( $table, $array, $fname = "wfInsertArray", $dbi = DB_WRITE )
240 {
241 $db =& wfGetDB( $dbi );
242 if ( $db !== false ) {
243 return $db->insertArray( $table, $array, $fname );
244 } else {
245 return false;
246 }
247 }
248
249 function wfGetArray( $table, $vars, $conds, $fname = "wfGetArray", $dbi = DB_LAST )
250 {
251 $db =& wfGetDB( $dbi );
252 if ( $db !== false ) {
253 return $db->getArray( $table, $vars, $conds, $fname );
254 } else {
255 return false;
256 }
257 }
258
259 function wfUpdateArray( $table, $values, $conds, $fname = "wfUpdateArray", $dbi = DB_WRITE )
260 {
261 $db =& wfGetDB( $dbi );
262 if ( $db !== false ) {
263 $db->updateArray( $table, $values, $conds, $fname );
264 return true;
265 } else {
266 return false;
267 }
268 }
269
270 ?>