Commit Graph

343 Commits

Author SHA1 Message Date
Ulf Wendel
e5f3857589 MFH 2008-07-23 13:04:18 +00:00
Antony Dovgal
a8af74f3d4 fix test names 2008-07-23 10:23:08 +00:00
Johannes Schlüter
be0793d2e7 MFH: Add mysqlnd support for PDO_mysql, fixes at least bug#41997,#42499,
pecl#12794, pecl#12401

# Running the tests:
# (Note: Doesn't work currnetly on HEAD, see:
#  http://news.php.net/php.qa/64378)
#
#  PDO_MYSQL_TEST_DSN  - DSN
#    For example: mysql:dbname=test;host=localhost;port=3306
#
#  PDO_MYSQL_TEST_HOST    - database host
#  PDO_MYSQL_TEST_DB      - database (schema) name
#  PDO_MYSQL_TEST_SOCKET  - database server socket
#  PDO_MYSQL_TEST_ENGINE  - storage engine to use
#  PDO_MYSQL_TEST_USER    - database user
#  PDO_MYSQL_TEST_PASS    - database user password
#  PDO_MYSQL_TEST_CHARSET - database charset
#
#  NOTE: if any of PDO_MYSQL_TEST_[HOST|DB|SOCKET|ENGINE|CHARSET] is
#  part of PDO_MYSQL_TEST_DSN, the values must match. That is, for example,
#  for PDO_MYSQL_TEST_DSN = mysql:dbname=test you MUST set PDO_MYSQL_TEST_DB=test.
2008-07-21 13:09:28 +00:00
Andrey Hristov
5e79f2c476 Fix for bug#45179 --with-mysql-sock fails to compile & work
Now --with-mysql-sock controls all mysql extensions. If provided it will be
the default value as it was set in php.ini . php.ini will override it for
ext/mysql and ext/mysqli but not for pdo_mysql
2008-07-21 12:58:51 +00:00
Nuno Lopes
61eb7ae554 remove unused PHP_EXTNAME_API macros.
#in preparation for the gcc 4 visibility patch
2008-01-03 16:20:33 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Dmitry Stogov
6c810b0d4c Improved memory usage by movig constants to read only memory. (Dmitry, Pierre) 2007-09-27 18:00:48 +00:00
Jani Taskinen
8af7bc2044 MFH: Fix some lib vs $PHP_LIBDIR issues 2007-07-31 13:02:00 +00:00
foobar
7ed3c4536d MFH: Fix some configure --help texts 2007-07-03 17:25:43 +00:00
Ilia Alshanetsky
dc1c6f74c8 Fixed bug #41698 (float parameters truncated to integer in prepared
statements).
2007-06-26 01:24:10 +00:00
Stanislav Malyshev
b925a9248b Fix INFILE LOCAL option handling with MySQL - now not allowed when open_basedir
or safe_mode is active
2007-06-18 21:51:32 +00:00
Antony Dovgal
ff514e208e fix tests 2007-05-18 11:47:58 +00:00
Antony Dovgal
ae49128df4 implement FR #41416 (getColumnMeta() should also return table name) 2007-05-17 15:12:23 +00:00
Antony Dovgal
1f65545121 fix test names 2007-05-07 18:03:01 +00:00
Antony Dovgal
bb489851e9 win32 test fixes 2007-04-18 08:06:29 +00:00
Ilia Alshanetsky
2f3e330ad0 Fixed bug #40935 (pdo_mysql does not raise an exception on empty
fetchAll()).
2007-04-15 16:50:42 +00:00
Ilia Alshanetsky
65afdf097c Fixed bug #40822 (pdo_mysql does not return rowCount() on select). 2007-04-08 15:26:21 +00:00
Antony Dovgal
0628f86e0e fix small typo
add --with-zlib-dir option (and simple automagic zlib detection)
2007-03-07 09:36:22 +00:00
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +00:00
Hannes Magnusson
14b7a1bdd1 Fix skipif 2006-12-12 08:13:31 +00:00
Ilia Alshanetsky
b7b0f4d988 Fixed bug #39759 (Can't use stored procedures fetching multiple result
sets in pdo_mysql).
2006-12-08 19:50:40 +00:00
Ilia Alshanetsky
fc21d423fd Added test for previous bug 2006-12-04 00:40:31 +00:00
Ilia Alshanetsky
e7c2bd6e40 Default to buffered queries (much faster)
Default to prepared statement emulation to avoid hitting MySQL bugs
2006-12-03 23:29:03 +00:00
Ilia Alshanetsky
916673a345 Fixed bug #39527 (Failure to retrieve results when multiple unbuffered,
prepared statements are used in pdo_mysql).
2006-12-02 17:53:44 +00:00
Antony Dovgal
588c45ea8d MFH: fix #38996 (PDO_MYSQL doesn't check connections for liveness) 2006-10-02 22:09:49 +00:00
Antony Dovgal
d677ad6789 fix #38451 (PDO_MYSQL doesn't compile on Solaris) 2006-08-14 20:11:31 +00:00
Ilia Alshanetsky
c6ace95236 Fixed bug #37445 (Fixed crash in pdo_mysql resulting from premature object
destruction).
2006-07-31 20:18:11 +00:00
Ilia Alshanetsky
624e5f83c8 Fixed tests from being always skipped. 2006-07-31 20:14:40 +00:00
Hartmut Holzgraefe
836e74ebee MFH 2006-07-10 14:06:13 +00:00
Michael Wallner
6e2ff39e3e - Fix bug #37630: MySQL extensions should link against thread safe client libs if built with ZTS 2006-06-01 19:14:48 +00:00
Michael Wallner
c0505439c3 - Fixed bug #37363 (PDO_MYSQL does not build if no other mysql extension is
enabled)
2006-06-01 15:14:45 +00:00
Edin Kadribasic
bbf97549b8 Remove pecl includes (Steph), except pdo_odbc which will remain broke 2006-05-11 21:43:59 +00:00
Wez Furlong
30f98ae77b set min pdo dep to 1.0.3, which will be the new pecl release 2006-05-02 02:43:11 +00:00
Wez Furlong
7614368f8a prep for pecl release 2006-05-02 02:32:40 +00:00
Wez Furlong
c1555236c9 tweak for better compatibility when building as SCE.
(library order is important)
2006-05-02 00:59:22 +00:00
Wez Furlong
64de59d9a7 avoid unterminated loop when closing the statement. 2006-04-22 16:35:18 +00:00
Wez Furlong
b9f85f37cc Fixed Bug #36602: persistent connections don't work with MySQL 5.0.3+.
Fixed PECL Bug #6262; correctly fallback to emulated statements
when the server version is too old.

Also include code to default to using emulated prepared statements, as these
can take advantage of the query cache.  Since it's a bit late in the release
process to spring this on the masses, the default has not been changed.  The
code is included so that it doesn't get lost.
2006-04-09 08:11:31 +00:00
Wez Furlong
bb5f3aa012 This completes the fix for PECL #5827; we need to gobble up result sets in the
stmt dtor too.
2006-04-09 06:49:07 +00:00
Wez Furlong
0f4137fbd9 fix for PECL Bug #5827.
We're responsible for gobbling up supplemental result sets in closeCursor()
(which is what PDO does for us if we didn't implement our own closer routine).
2006-04-09 06:41:42 +00:00
Ilia Alshanetsky
3b1cb0e500 Added myself to PDO and PDO_MySQL credits
Added Wez to PDO_MySQL credits
Added Tony to Q&A team credits
Regenerated the credits file
2006-03-23 18:36:47 +00:00
Pierre Joye
c4db88563f - Fixed fetching of string value bigger than 128bytes when no options
are used
2006-03-23 01:24:36 +00:00
Ilia Alshanetsky
6fd71dbbe9 Allow PDO_MYSQL_ATTR_DIRECT_QUERY to be set via constructor
Allow getAttribute() to fetch MySQL specific attributes.
Eliminate unnecessary auto-commit call on connect.
2006-03-17 00:15:09 +00:00
Ilia Alshanetsky
41de805a9d MFH:
Fixed bug #36572 (Added PDO::MYSQL_ATTR_DIRECT_QUERY constant that show be
set when executing internal queries such as "show master status" via MySQL).

Added missing constant for MAX_BUFFER_SIZE.
2006-03-05 17:18:01 +00:00
Ilia Alshanetsky
3608dd4c11 Fixed bug #36345 (PDO/MySQL problem loading BLOB over 1MB). 2006-02-14 14:26:11 +00:00
foobar
5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
Ilia Alshanetsky
077559d3e4 Make MySQL driver use ANSI complaint quoting style. 2005-12-25 20:30:40 +00:00
foobar
3e669bc950 MFH: nuke php3 legacy 2005-12-06 02:28:41 +00:00
Antony Dovgal
012e5bf4cd add NEWDECIMAL, NEWDATE, GEOMETRY, SET and ENUM field types 2005-12-05 13:22:14 +00:00
Wez Furlong
17683295e4 switch to package2.xml 2005-12-04 22:34:26 +00:00
Wez Furlong
bd0aaa0198 Fix PECL #6138 2005-12-04 18:33:26 +00:00
Wez Furlong
c83472edf1 prep for release 2005-12-01 05:16:24 +00:00
Antony Dovgal
22efcfd530 MFH: fix possible crash in pdo_mysql_stmt_dtor() 2005-11-30 11:33:07 +00:00
foobar
efcd3e318b cleanup + fix link problems with old mysql versions 2005-11-29 17:31:13 +00:00
Wez Furlong
85ad81736c set to 1.0 stable. 2005-11-26 20:50:08 +00:00
Wez Furlong
c0c096b752 fix configure 2005-11-25 17:07:49 +00:00
foobar
366832fbd2 MFH: Fixed wrong usage of ZEND_EXTENSION_API_NO (these are not Zend exts :) 2005-11-25 16:01:41 +00:00
Antony Dovgal
dc0db7382c MFH: fix #35391 (pdo_mysql::exec does not return number of affected rows) 2005-11-25 12:56:04 +00:00
Wez Furlong
aae30f20fc Fix bug that breaks pdo_mysql when built shared (was not being linked to the
mysql libraries).

If you have another mysql module loaded, this would not have been noticable.
2005-11-24 18:56:16 +00:00
Wez Furlong
2556b354b3 improve configure script.
Fixes #35107; compile failure with MySQL 5
2005-11-05 16:20:06 +00:00
Wez Furlong
872661b91d prep for PECL release 2005-11-01 03:04:49 +00:00
Wez Furlong
c28a9a4e5c Closes PECL Bug #5802 2005-10-29 02:41:50 +00:00
Wez Furlong
e0924b7451 Close PECL Bug #5780 2005-10-29 02:36:30 +00:00
Wez Furlong
b2424b2e08 argh! we don't want to NULL the stmt here; freeing the results is not the same
as destroying the prepared statement handler, so we're leaking and breaking, as
can be seen by running the test suite.

brown paper bag for PDO in PHP 5.1RC4?
2005-10-29 02:16:35 +00:00
Wez Furlong
9bd48c2e15 Closes PECL Bug #5645; emits mysql client library version in MINFO output. 2005-10-29 01:58:22 +00:00
Antony Dovgal
9ffefbc74e MFH: add MySQL options and corresponding constants 2005-10-27 17:34:24 +00:00
Antony Dovgal
7c01510b95 MFH: free && set to NULL S->stmt 2005-10-27 17:26:19 +00:00
Ilia Alshanetsky
4d0439e487 MFH: Fixed bug #34623 (Crash in pdo_mysql on longtext fields). 2005-10-19 14:11:56 +00:00
Ilia Alshanetsky
5a29be9b7d Fixed tests for ZTS builds 2005-10-18 00:12:30 +00:00
Ilia Alshanetsky
d467331307 Fixed test for ZTS builds 2005-10-18 00:06:20 +00:00
Antony Dovgal
8a929e054e use the right constant name in error messages 2005-10-05 22:14:52 +00:00
Wez Furlong
c19322869b use the right macro for these 2005-10-01 19:19:36 +00:00
Marcus Boerger
b47525e508 - TSRM fix 2005-09-29 19:57:13 +00:00
Wez Furlong
fdd42afa6c Fixup LOB handling for inserts (refs #34630).
Also tripped over the return of PECL #5200; looks like mysql doesn't return an
accurate length for the columns.  The PDO driver will sanity check the real
length against the buffer size it allocated (based on the info provided by
mysql), so that we won't overrun the buffer.  In addition, if a varchar field
is reported as having a length of less than 128, we'll allocate 128 just in
case.

If the data is truncated, report it via the appropriate sqlstate code.

There must be a better way to do this stuff.
2005-09-25 02:05:03 +00:00
foobar
1536082186 fix typo 2005-09-24 23:23:25 +00:00
Ilia Alshanetsky
fe9db9ab0a Remove pointless PDO_ prefix 2005-09-20 00:44:51 +00:00
Ilia Alshanetsky
bfe844e41e MFH: Make PDO use class constants 2005-09-20 00:35:21 +00:00
Ilia Alshanetsky
766e4b3c15 MFH: Fix error detection for queries such as OPTIMIZE 2005-09-14 15:34:58 +00:00
Wez Furlong
77d3a41f8a update package.xml files and version numbers, in anticipation of a big bunch of releases. 2005-09-11 05:27:30 +00:00
Wez Furlong
2d16ed7706 Add test for this bug report; can't repeat the problem. 2005-09-10 19:27:29 +00:00
Ilia Alshanetsky
156a899e4a MFH: Fixed bug #34001 (pdo_mysql truncates numberic fields at 4 chars) 2005-09-01 01:57:01 +00:00
George Schlossnagle
b247dc3418 MFH, fix 34072 2005-08-31 04:06:10 +00:00
foobar
417f113940 MFH 2005-08-11 23:45:22 +00:00
Wez Furlong
32cf3cc19f Yes, I can't count the months, and no, I'm not related to Ilia. 2005-07-27 04:07:44 +00:00
Wez Furlong
163c92510a Prep for PECL release 2005-07-27 02:39:46 +00:00
Ilia Alshanetsky
4b6d351cd3 Missing bit of the previous commits 2005-07-20 16:22:09 +00:00
Ilia Alshanetsky
99d8090cb2 Fixed memory corruption (wrong order of operations of stored prep. stmt).
Optimize the max length calculation process.
2005-07-20 04:30:14 +00:00
Ilia Alshanetsky
97e8c6f4a9 Proper handling for databases that need to pre-calculate length of large
columns, which is not normally done for performance reasons.
2005-07-20 03:38:33 +00:00
Ilia Alshanetsky
9438584d76 Only set attribute if result set contains some columns. 2005-07-20 02:36:34 +00:00
Ilia Alshanetsky
1e1d2e2b0d clean up 2005-07-20 02:19:20 +00:00
Wez Furlong
8adbc92d4b this hack can and does segv; let's remove it. 2005-07-20 01:59:14 +00:00
Wez Furlong
8c446726cf Add test case 2005-07-14 02:21:03 +00:00
Wez Furlong
fc48f9096d gah! 2005-07-14 02:20:52 +00:00
Wez Furlong
d025a14d33 Thanks 'james' (a visitor to my blog) for reporting this bug. 2005-07-14 02:09:54 +00:00
Wez Furlong
695e195a27 keep this as a placeholder for debugging weird regressions 2005-07-14 02:09:08 +00:00
Wez Furlong
0601249f82 it is not an error for a statement to return 0 rows.
Andrey: please run the test suite before each commit!
This broke beta 3 and was clearly visible as a result of running the tests.

Running further tests now.
2005-07-14 02:03:54 +00:00
Andrey Hristov
5232c4a544 ok, call pdo_mysql_error() before returning -1 2005-07-12 19:32:13 +00:00
Andrey Hristov
8899425e26 strictly check the result of mysql_affected_rows() 2005-07-12 19:22:05 +00:00
Ilia Alshanetsky
e21f5f9592 A bit of further tuning. 2005-07-11 14:46:01 +00:00
Andrey Hristov
9749926224 - mysql_affected_rows() already returns an unsigned long
- optimize a bit the real_escape
- handle the situation when libmysql bails out because of lack of memory
2005-07-11 13:52:13 +00:00
Andrey Hristov
31de8e9018 stmt->column_count is set only if the result has been already bound, don't
rely on that and use the real count which is kept in st_mysql_stmt
#of course using internal values is bad idea but the comment already says
#that this should be fixed
2005-07-10 02:58:51 +00:00
Andrey Hristov
55ab9b75a6 ok, calculate max_length only in case of a blob (normal, medium, long).
in case of a varchar lets allocate 255 bytes and be quick without asking
libmysql to update max_length
2005-07-10 02:49:14 +00:00
Andrey Hristov
2711d70d33 if the result set is buffered ask libmysql to compute the lengths, so
later allocate buffer as big as the largest value of the column in the
result set (max_legth positive).
2005-07-10 02:20:26 +00:00
Wez Furlong
5602a5ba65 Get precise lengths from the server, as suggested by Andrey. 2005-07-10 02:00:35 +00:00
Ilia Alshanetsky
eb4aff5a91 Added safety checks. 2005-07-09 05:08:54 +00:00
Ilia Alshanetsky
4c18dfc852 Make cursor closer work with emulation as well. 2005-07-09 05:04:43 +00:00
Ilia Alshanetsky
df60983b75 Added missing header check. 2005-07-09 04:43:16 +00:00
Ilia Alshanetsky
c58e878513 Implement cursor_closer for MySQL driver. 2005-07-09 04:30:49 +00:00
Ilia Alshanetsky
ba66cac1cf Fixed memory leak 2005-07-09 04:21:14 +00:00
Wez Furlong
c2f3636cf2 Fix two bugs:
- execute() would not re-fetch meta data after nextRowset() had been called.

- buffered mode would only be enabled on the first execute on a statement handle.
2005-07-09 03:54:13 +00:00
Wez Furlong
168b6500fd Fix #33618 2005-07-08 19:25:37 +00:00
Ilia Alshanetsky
e7b930ea9a Make prepared statements obey buffering flag in MySQL. 2005-07-07 17:53:34 +00:00
Ilia Alshanetsky
22896664a8 Fixed memory leak 2005-07-07 16:27:46 +00:00
Ilia Alshanetsky
307f622817 Fixed memory leak. 2005-07-07 15:54:00 +00:00
Wez Furlong
3fbb2081a1 adopt new tests 2005-07-07 15:04:45 +00:00
Wez Furlong
d7e5dfb2de Enable native mysql 4.1.x prepared statement support
# the hardest part was installing 4.1.x on a gentoo box over a 56k modem
2005-07-03 02:20:08 +00:00
Wez Furlong
1bbab25455 Experimental support for queries returning multiple rowsets under mysql 5.0.
Patch from Guy Harrison (guy dot a dot harrison (at) gmail dot com)
2005-07-02 21:01:38 +00:00
Ilia Alshanetsky
fb7c1f0561 Remove "custom" PDDRV sqlstate. 2005-06-27 14:52:46 +00:00
Ilia Alshanetsky
09f052358f Fixed bogus query failure claim, on some queries such as OPTIMIZE table. 2005-06-24 23:58:06 +00:00
Ilia Alshanetsky
348c0cddae Added PDO_MYSQL_ATTR_USE_BUFFERED_QUERY parameter for pdo_mysql, to toggle
usage of buffered queries.
2005-06-24 19:45:59 +00:00
Ilia Alshanetsky
e956cc30d7 Skip the test, it fails due to missing transaction support. 2005-06-24 19:20:59 +00:00
Ilia Alshanetsky
e80a144fce Fixed PDO Mysql tests. 2005-06-24 19:10:41 +00:00
Marcus Boerger
5cf2c9dc45 - Add +ifdefs to still allow PHP 5.0 builds of PDO
# PDO is a PECL extension and at the moment is still meant to compile on
# both PHP 5.0 and PHP 5.1.
2005-06-23 00:19:16 +00:00
Ilia Alshanetsky
c594f47f76 Fixed test skip conditions.
# Same needs to be done to odbc, but it seems access is restricted
# for "privileged" folks.
2005-06-21 13:42:23 +00:00
Dmitry Stogov
f47c78487b Improved PHP extension loading mechanism with support for module dependencies and conflicts 2005-06-17 09:39:23 +00:00
foobar
15cf2a60b0 - Added PHP_CHECK_PDO_INCLUDES macro (caches the result) 2005-06-14 00:00:53 +00:00
foobar
ee28f62dc0 ws 2005-06-13 23:37:20 +00:00
foobar
a20383ba06 - Unify the "configure --help" texts 2005-05-29 23:17:16 +00:00
Marcus Boerger
9b3929a7e9 - Need to make PDO::__construct() final to prevent SEGV it isn't called 1st 2005-05-26 18:36:18 +00:00
Marcus Boerger
2ac0540323 - Add test for deriving PDO 2005-05-24 14:26:22 +00:00
Marcus Boerger
88157ad284 - Add new tests for PDO_FETCH_INTO 2005-05-24 12:39:09 +00:00
Ilia Alshanetsky
fa0e534f83 Various compiler warning fixes. 2005-05-18 22:40:56 +00:00
Ilia Alshanetsky
53ee348165 Make unix domain sockets work. 2005-05-17 23:23:52 +00:00
Ilia Alshanetsky
746b89df16 Fixed type mixup. 2005-05-17 19:33:03 +00:00
Ilia Alshanetsky
569138e0c0 removed unused var. 2005-04-19 20:53:54 +00:00
foobar
0e57528666 No c++ comments in C code 2005-04-19 11:41:04 +00:00
Marcus Boerger
2906d6570c - Add new test 2005-03-24 12:31:37 +00:00
Marcus Boerger
a66e14645c - Add new tests 2005-03-21 00:29:25 +00:00
Marcus Boerger
360fbc09b7 - Interface name was changed 2005-03-19 10:55:35 +00:00
Marcus Boerger
7c4cd04229 - Update tests 2005-03-13 22:35:34 +00:00
Marcus Boerger
92af2b6194 - Update tests 2005-03-10 17:55:36 +00:00
Magnus M��tt�
d49ecd51c1 Add more tests. 2005-03-09 03:50:10 +00:00
Marcus Boerger
bbccc37f84 - Add new tests 2005-03-07 22:43:27 +00:00
Marcus Boerger
efb3529b7f - Add new tests 2005-03-07 22:36:12 +00:00
Marcus Boerger
7bbbfa3f15 - Add new tests 2005-03-07 01:39:12 +00:00
Marcus Boerger
f76f510185 - Add tests
- Fix testname
- Drop unnecessary include line (was wrong anyway)
2005-03-04 01:29:27 +00:00
Rasmus Lerdorf
99f832a206 If pdo is disabled, skip all the pdo extensions. 2005-02-28 08:18:47 +00:00
Marcus Boerger
d0a76e992b - Add new test 2005-02-27 22:39:35 +00:00
Hartmut Holzgraefe
f7e8fcb8e0 fully distinguish between database and statement level errors 2005-02-27 20:34:36 +00:00
Hartmut Holzgraefe
dd7d41e938 use fetch_fields only once and remember the result 2005-02-27 12:43:23 +00:00
Hartmut Holzgraefe
04f2f981e0 changed the error checks on result set retrieval
UPDATEs not modifying anything are not actually bugs
2005-02-27 12:15:47 +00:00