Commit Graph

74 Commits

Author SHA1 Message Date
Markus Fischer
1a247ba1d8 Made error returning on missing extensions consistent across all backends 2001-10-14 01:23:07 +00:00
Jon Parise
c6bed4ce3d Search for the '@' symbol in the DSN from the right instead of the left.
That will allow the password element to include a '@' symbol without
confusing the DSN parser.

Submitted by: Alex L <admin@networkessence.net>
2001-10-04 00:29:37 +00:00
Tomas V.V.Cox
fa0481609c * Added the new fetch row mode: DB_FETCHMODE_OBJECT that returns the columns
of a fetched row as object properties
* Added a new class DB_row (the default type of a fetched row object)
* Updated some phpdocs
2001-08-03 14:13:52 +00:00
Tomas V.V.Cox
538c838ac9 DB::assertExtension-> trigger a useful error message if backend extension couldn't be loaded 2001-07-26 00:01:27 +00:00
Chuck Hagenbuch
20a61a49ca fix problem with static usage... 2001-07-17 16:01:16 +00:00
Stig Bakken
8406547fdb (PEAR DB) some doc fixes 2001-07-15 22:54:08 +00:00
Tomas V.V.Cox
51c54c45bd added DB_PARAM_MISC constant to use in prepare/execute 2001-07-12 11:14:12 +00:00
Tomas V.V.Cox
dc60b4d466 added LOCK/UNLOCK to mainps queries (reported by Erik Hjortsberg) 2001-07-11 11:03:27 +00:00
Tomas V.V.Cox
2bf0a0e5af added NEED_MORE_DATA error message to $errorMessages 2001-07-10 21:49:51 +00:00
Tomas V.V.Cox
48cbbbb3db minor in-line doc fix 2001-07-10 11:55:15 +00:00
Tomas V.V.Cox
dfa35a78e6 Forget to add the $this->result param to fetchInto 2001-06-08 01:15:35 +00:00
Tomas V.V.Cox
48920fbb1b Changed constant DB_OK from 0 to 1. So if you set a default error handler,
this will improve fetchInto usability [while ($res->fetchInto($row))],
because don't disturb the while loop
2001-06-07 13:44:44 +00:00
Tomas V.V.Cox
50cb6e3733 change DB_result::fetchRow to use extension fetchInto instead of
DB_result::fetchInto (speed improvement)
2001-06-07 12:55:14 +00:00
Tomas V.V.Cox
cf080fb73f fix small bug on error reporting (PEAR::raiseError params order) 2001-04-19 23:56:57 +00:00
Stig Bakken
fa6f3a3617 * fixed DB_common::getXxx when using the parameter array (didn't work before) 2001-04-19 21:54:37 +00:00
Stig Bakken
ad8dbb8d10 * added Colin's connect/factory error reporting fix 2001-04-19 02:32:33 +00:00
Stig Bakken
b16f38e2e7 * fix handling of broken DSNs like Colin suggested 2001-04-18 23:03:18 +00:00
Stig Bakken
2723ad2e63 * have DB.php use PEAR::raiseError in factory methods 2001-04-17 01:51:27 +00:00
Stig Bakken
f35cef5928 * DB::isManip now handles create, drop, alter, grant, revoke. 2001-04-16 22:16:38 +00:00
Stig Bakken
d3bb832585 * actually commit the stuff I said I had committed :-) 2001-04-16 21:24:38 +00:00
Tomas V.V.Cox
1910b18164 pgsql.php
* better handling of $rownum param in fetchInto()
* changed property numrows[] to num_rows[]

DB.php
* $rowmun in fetch* now defaults to NULL

mysql.php
* added default $fetchmode to ordered
* removed extra checks in connect()
* fetchrow() now uses fetchInto()
* added the "fetch absolute row numbers" feature to fetchInto()
(not tested)

ifx.php
* better handling of $rownum param in fetchInto()
2001-03-28 23:52:21 +00:00
Tomas V.V.Cox
88d526ec5b pgsql.php
* connect() always use pg_connect string instead of the deprecated params
mode
* removed duplicated functions prepare() and execute() (now in common.php)
* pgsqlRaiseError() always fills native error param on DB_error objs
* added third param $rownum to fetchInto() so users can fetch also absolute
row numbers
* changed fetchRow() to use fetchInto() (can not erase, still used in get*()
from common.php

DB.php
* added third param $rownum to fetchInto()/fetchRow() so users can fetch
also absolute row numbers
* changed fetchRow() to use fetchInto()
2001-03-26 23:31:49 +00:00
Stig Bakken
48aa99f6be * added Christian Stocker's tableInfo() implementation 2001-03-24 07:00:44 +00:00
Stig Bakken
4651aa04c0 * fixed Oracle tests, fixed some bugs in DB_oci8, all tests but
errorNative() pass now (but that may be a bug in the test :-)
* implemented numRows() emulation in DB_oci8 that is available
  in "optimize portability" mode only
2001-03-23 01:15:05 +00:00
Jon Parise
d4952b482e Style and whitespace, based mostly on a submission from
"Tomas V.V.Cox" <cox@idecnet.com>.
2001-03-21 04:15:40 +00:00
Jon Parise
cf48573277 Revised version of the parseDSN function.
Submitted by: "Tomas V.V.Cox" <cox@idecnet.com>
2001-03-11 23:26:18 +00:00
Stig Bakken
c685f25d33 * allow empty passwords in dsn (for example "mysql://user:@database") 2001-02-20 23:00:08 +00:00
Chuck Hagenbuch
0b11c910f5 All DB modules should return NULL from fetchRow() now if there are no more
results, and a DB_Error object only on an error.

DB::isError() return false when passed null now.
2001-02-16 17:14:39 +00:00
Colin Viebrock
2265b5b4c5 I think this should've been changed as well, right? 2001-02-02 17:59:30 +00:00
Chuck Hagenbuch
38fae9bae4 make sure to include subclasses before trying to instantiate them. 2001-02-02 05:24:31 +00:00
Stig Bakken
86c5a77ed9 @Allow url encoding in DB usernames and passwords (Stig, PEAR) 2001-01-30 08:34:55 +00:00
Chuck Hagenbuch
b4378dcf80 have DB::isError return true if passed "null". Now you can more consistently
use DB::isError(), since some of the db drivers return nulls from various
functions (like fetchRow()), and others don't... We should probably make all
of them just return errors. I did this for the mysql driver, as a start.
2001-01-26 20:07:22 +00:00
Stig Bakken
6792978aed * updated copyrights (thanks Colin)
* moved scripts to own directory (bug #7635)
2001-01-10 01:01:59 +00:00
Stig Bakken
9f0fc7db8b * DB::isManip counts "REPLACE" as a manipulation command (MySQL specific)
* renamed DB_common::execute_emulate_query to DB_common::executeEmulateQuery
* moved "query" DB method to DB_common, there was duplicated logic in query
  and simpleQuery in all backends.
2000-12-10 01:32:16 +00:00
Stig Bakken
efbc4a2566 * applied fetch modes patch for odbc by Richard M. Yumul
* added DB::isManip so we have _one_ place for testing whether something
  is a data manipulation query
* when passed a string as its first constructor arg, DB_Error now uses
  the error code DB_ERROR rather than just 0
* implemented auto-commit for ibase (not yet fully tested)
* fixed persistent connections in odbc
2000-12-08 02:30:43 +00:00
Stig Bakken
8f74a36858 * added Sebastian's affectedRows() and numRows() for MySQL
* added regression test for DB_mysql::affectedRows
* fixed some PEAR_Error based tests that had broken (line number change)
2000-12-07 19:53:27 +00:00
Stig Bakken
cc9d7fc744 * cleanup 2000-12-06 02:53:14 +00:00
Stig Bakken
48e7da206f * MySQL sequence emulation using auto_increment
* fixed indentation
2000-12-05 07:00:57 +00:00
Sebastian Bergmann
c20df37045 No comment. 2000-12-04 07:05:16 +00:00
Sebastian Bergmann
676bb6b9a0 I couldn't read it in order to understand it in order to extend it :-) 2000-12-04 06:56:29 +00:00
Stig Bakken
d004ea17c3 PEAR DB: added DB_ERROR_VALUE_COUNT_ON_ROW 2000-10-15 09:02:54 +00:00
Stig Bakken
be60fcb11a PEAR DB: added DB_ERROR_NOT_LOCKED, gave DB_common::raiseError an optional
"nativecode" parameter.
2000-10-15 02:22:25 +00:00
Stig Bakken
7c53e635b2 PEAR:
* added $debuginfo parameter to PEAR_Error constructor
 * put last query in $debuginfo from DB_common::raiseError()
@PEAR: add last executed query as debug info in DB errors (Stig)
2000-09-13 11:27:59 +00:00
Stig Bakken
f29b5131d3 @PEAR: renamed DB_GETMODE_* to DB_FETCHMODE_*, added setFetchMode()
@      in DB_common to set the default mode, added some MySQL tests (Stig)
2000-09-12 00:27:50 +00:00
Stig Bakken
54e911aa4f * renamed toString method to __string_value 2000-08-28 23:09:36 +00:00
Stig Bakken
315f4f5658 @PHP 3 regression testing framework re-born (Stig)
Took the old PHP 3 regression testing framework and rewrote it in PHP.
Should work on both Windows and UNIX, however I have not tested it on
Windows.  See tests/README for how to write tests.  Added the PHP 3
tests and converted most of them.
2000-08-27 19:46:06 +00:00
Sterling Hughes
3f97600862 Remove bogus commit that made DB::DB() an alias for DB::connect() 2000-08-24 18:18:49 +00:00
Sterling Hughes
4850e34bf3 -Add getCode() method to PEAR_Error
-Correct license versions + My Address for DB/* mods
-Correct ibase module
-Javadocize File_Find
-Add a optional constructor to DB that passes it on to DB::connect()
2000-08-24 01:34:16 +00:00
Chuck Hagenbuch
dc2362069e Make the DB classes work with call-time pass-by-reference disabled. 2000-08-21 14:37:47 +00:00
Stig Bakken
c63410f6be Multiple DB::connect or DB::factory calls using the same backend
should work now.
2000-07-26 09:57:06 +00:00