Commit Graph

80 Commits

Author SHA1 Message Date
Johannes Schlüter
3e17b49008 - Fix Bug #53782 (foreach throws irrelevant exception) 2011-05-16 15:37:39 +00:00
Johannes Schlüter
22b42afaee - Fix #53551 (PDOStatement execute segfaults for pdo_mysql driver) 2011-01-14 14:57:57 +00:00
Felipe Pena
927bf09c29 - Year++ 2011-01-01 02:19:59 +00:00
Kalle Sommer Nielsen
33c99f9a44 Fixed constness compiler warning in pdo_mysql 2010-10-05 09:58:15 +00:00
Andrey Hristov
9c90bf42c1 Fix for Bug #51870
PDO::fetchAll after a PDO::execute with bindings lead to a segv.

It is only in unreleased code and thus doesn't deserve a NEWS entry
2010-05-21 11:09:28 +00:00
Andrey Hristov
7496cc761e decouple the methods in MYSQLND_STMT from the data,
needed to move to a new structure MYSQLND_STMT. Makes
the code cleaner and less error-prone.
Also fix PDO/MySQL which directly touch mysqlnd internals
instead of using API calls.
2010-03-16 12:36:57 +00:00
Andrey Hristov
e50de7d982 Pass tsrmls to all functions, which might need it in the future.
We are anyway breaking the internal ABI in 5.3.2 so this won't hurt
and make us prepared for the future.
2010-02-03 17:31:29 +00:00
Sebastian Bergmann
9ba1e81665 sed -i "s#1997-2009#1997-2010#g" **/*.c **/*.h **/*.php 2010-01-03 09:23:27 +00:00
Kalle Sommer Nielsen
f02ebe4a08 MFH: Fix compiler warnings in ext/mysql, ext/mysqli and ext/pdo_mysql 2009-05-20 08:30:12 +00:00
Ilia Alshanetsky
a6263465cf Removed unused variable 2009-01-14 19:16:24 +00:00
Sebastian Bergmann
08659c2dcd MFH: Bump copyright year, 3 of 3. 2008-12-31 11:15:49 +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
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Antony Dovgal
ae49128df4 implement FR #41416 (getColumnMeta() should also return table name) 2007-05-17 15:12:23 +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
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +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
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
Wez Furlong
64de59d9a7 avoid unterminated loop when closing the statement. 2006-04-22 16:35:18 +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
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
Antony Dovgal
012e5bf4cd add NEWDECIMAL, NEWDATE, GEOMETRY, SET and ENUM field types 2005-12-05 13:22:14 +00:00
Antony Dovgal
22efcfd530 MFH: fix possible crash in pdo_mysql_stmt_dtor() 2005-11-30 11:33:07 +00:00
Wez Furlong
c28a9a4e5c Closes PECL Bug #5802 2005-10-29 02:41:50 +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
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
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
Ilia Alshanetsky
156a899e4a MFH: Fixed bug #34001 (pdo_mysql truncates numberic fields at 4 chars) 2005-09-01 01:57:01 +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
fc48f9096d gah! 2005-07-14 02:20:52 +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
8899425e26 strictly check the result of mysql_affected_rows() 2005-07-12 19:22:05 +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