ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/PApp-SQL/SQL.pm
(Generate patch)

Comparing PApp-SQL/SQL.pm (file contents):
Revision 1.22 by root, Sun Apr 7 16:22:56 2002 UTC vs.
Revision 1.28 by root, Sat Nov 2 03:33:49 2002 UTC

44use DBI (); 44use DBI ();
45 45
46BEGIN { 46BEGIN {
47 use base qw(Exporter DynaLoader); 47 use base qw(Exporter DynaLoader);
48 48
49 $VERSION = 0.13; 49 $VERSION = 0.141;
50 @EXPORT = qw( 50 @EXPORT = qw(
51 sql_exec sql_fetch sql_fetchall sql_exists sql_insertid $sql_exec 51 sql_exec sql_fetch sql_fetchall sql_exists sql_insertid $sql_exec
52 sql_uexec sql_ufetch sql_ufetchall sql_uexists 52 sql_uexec sql_ufetch sql_ufetchall sql_uexists
53 ); 53 );
54 @EXPORT_OK = qw( 54 @EXPORT_OK = qw(
76done by this module. 76done by this module.
77 77
78=item $PApp::SQL::DBH 78=item $PApp::SQL::DBH
79 79
80The default database handle used by this module if no C<$DBH> was 80The default database handle used by this module if no C<$DBH> was
81specified as argument and no C<$DBH> is found in the current package. See 81specified as argument. See C<sql_exec> for a discussion.
82C<sql_exec> for a discussion.
83 82
84=item $PApp::SQL::Database 83=item $PApp::SQL::Database
85 84
86The current default C<PApp::SQL::Database>-object. Future versions might 85The current default C<PApp::SQL::Database>-object. Future versions might
87automatically fall back on this database and create database handles from 86automatically fall back on this database and create database handles from
163statement handle. The command and the statement handle will be cached 162statement handle. The command and the statement handle will be cached
164(with the database handle and the sql string as key), so prepare will be 163(with the database handle and the sql string as key), so prepare will be
165called only once for each distinct sql call (please keep in mind that the 164called only once for each distinct sql call (please keep in mind that the
166returned statement will always be the same, so, if you call C<sql_exec> 165returned statement will always be the same, so, if you call C<sql_exec>
167with the same dbh and sql-statement twice (e.g. in a subroutine you 166with the same dbh and sql-statement twice (e.g. in a subroutine you
168called), the statement handle for the first call mustn't be used. 167called), the statement handle for the first call mustn't not be in use
168anymore, as the subsequent call will re-use the handle.
169 169
170The database handle (the first argument) is optional. If it is missing, 170The database handle (the first argument) is optional. If it is missing,
171C<sql_exec> first tries to use the variable C<$DBH> in the current (= 171it tries to use database handle in C<$PApp::SQL::DBH>, which you can set
172calling) package and, if that fails, it tries to use database handle in 172before calling these functions. NOTICE: future and former versions of
173C<$PApp::SQL::DBH>, which you can set before calling these functions. 173PApp::SQL might also look up the global variable C<$DBH> in the callers
174package.
175
176=begin comment
177
178If it is missing, C<sql_exec> first tries to use the variable C<$DBH>
179in the current (= calling) package and, if that fails, it tries to use
180database handle in C<$PApp::SQL::DBH>, which you can set before calling
181these functions.
182
183=end comment
174 184
175The actual return value from the C<$sth->execute> call is stored in the 185The actual return value from the C<$sth->execute> call is stored in the
176package-global (and exported) variable C<$sql_exec>. 186package-global (and exported) variable C<$sql_exec>.
177 187
178If any error occurs C<sql_exec> will throw an exception. 188If any error occurs C<sql_exec> will throw an exception.
308 318
309=item [old-size] = cachesize [new-size] 319=item [old-size] = cachesize [new-size]
310 320
311Returns (and possibly changes) the LRU cache size used by C<sql_exec>. The 321Returns (and possibly changes) the LRU cache size used by C<sql_exec>. The
312default is somewhere around 50 (= the 50 last recently used statements 322default is somewhere around 50 (= the 50 last recently used statements
313will be cached). It shouldn't be too large, since a simple linear listed 323will be cached). It shouldn't be too large, since a simple linear list
314is used for the cache at the moment (which, for small (<100) cache sizes 324is used for the cache at the moment (which, for small (<100) cache sizes
315is actually quite fast). 325is actually quite fast).
316 326
317The function always returns the cache size in effect I<before> the call, 327The function always returns the cache size in effect I<before> the call,
318so, to nuke the cache (for example, when a database connection has died 328so, to nuke the cache (for example, when a database connection has died
406 416
407Return the login name. 417Return the login name.
408 418
409=item $db->password 419=item $db->password
410 420
411Return the password (emphasizing the fact that the apssword is stored plaintext ;) 421Return the password (emphasizing the fact that the password is stored plaintext ;)
412 422
413=cut 423=cut
414 424
415sub dsn($) { 425sub dsn($) {
416 my $self = shift; 426 my $self = shift;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines