Commit Graph

95 Commits

Author SHA1 Message Date
Gustavo André dos Santos Lopes
fee191658d - Fixed bug #61267: pdo_pgsql's PDO::exec() returns the number of SELECTed
rows on postgresql >= 9
2012-03-08 08:52:28 +00:00
Felipe Pena
4e19825281 - Year++ 2012-01-01 13:15:04 +00:00
Felipe Pena
4b30846b50 - Make usage of new PHP_FE_END macro 2011-07-25 11:35:02 +00:00
Felipe Pena
191df85605 - Drop C++ style comments 2011-06-10 23:14:15 +00:00
Felipe Pena
32b5f8a1a3 - Added new parameter parsing option (p - for valid path (string without null byte in the middle))
# The tests will be fixed in the next commits
2011-06-06 21:28:16 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Ilia Alshanetsky
6ed1819bf4 Added inTransaction() method to PDO, with specialized support for Postgres 2010-06-10 12:11:19 +00:00
Ilia Alshanetsky
7ea9e879f3 Added support for copy to/from array/file for pdo_pgsql extension.
# original patch by Denis Gasparin
2010-06-10 11:11:29 +00:00
Ilia Alshanetsky
d2e14e3f20 Fixed bug #50728 (All PDOExceptions hardcode 'code' property to 0) 2010-01-12 12:46:54 +00:00
Sebastian Bergmann
9ba1e81665 sed -i "s#1997-2009#1997-2010#g" **/*.c **/*.h **/*.php 2010-01-03 09:23:27 +00:00
Matteo Beccati
fa67c860e0 - Properly fixed bug #49985 (pdo_pgsql prepare() re-use previous aborted transaction).
# Removed usage of the memory address when generating prepared statemend names
# as uniqueness can't be enforced. Used a statment counter instead.
2009-11-04 19:32:27 +00:00
Matteo Beccati
9ee8dd90a3 - Fixed bug #48764 (PDO_pgsql::query always uses implicit prepared statements if v3 proto available)
# original patch by Mark Kirkwood
2009-10-07 17:40:16 +00:00
Matteo Beccati
b8910c99ea MFH:
- Removed HAVE_PQEXECPARAMS which was left out during the previous commit
2009-04-30 12:56:00 +00:00
Matteo Beccati
6e22ab5e3e MFH:
- Changed PDO_PGSQL configure script to require libpq 7.4
- Cleaned up usage of HAVE_PQ* defines
- Fixed compiler warnings
- Removed custom implementation of PQunescapeByte
# Rationale:
# - PDO_PGSQL couldn't even compile when using libpq 7.3
# - PostgreSQL 7.3 is unsupported since a long time
# - Got consensus from pgsql devs on freenode
2009-04-30 12:38:43 +00:00
Pierre Joye
ebfdd61503 - fix build when pqprepare does not exist 2009-04-01 16:13:33 +00:00
Matteo Beccati
6c6c8febf1 - Fixed bug #44861 (scrollable cursor don't work with pgsql) 2009-03-28 02:58:04 +00:00
Sebastian Bergmann
08659c2dcd MFH: Bump copyright year, 3 of 3. 2008-12-31 11:15:49 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Ilia Alshanetsky
56c610c97a Fixed bug #43493 (pdo_pgsql does not send username on connect when password
is not available)
2007-12-04 13:03:26 +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
Ilia Alshanetsky
37d1bfed25 Added support for ATTR_TIMEOUT inside pdo_pgsql driver.
Fixed a bug inside PDO's "use persistent" connection detection mechanism
that would trigger connections on "" and "0" values
2007-06-28 03:13:29 +00:00
Ilia Alshanetsky
e8de152ddd Added persistent connection status checker to pdo_pgsql 2007-06-27 02:00:46 +00:00
Sebastian Bergmann
4223aa4d5e MFH: Bump year. 2007-01-01 09:36:18 +00:00
Ilia Alshanetsky
d257696604 Fixed bug #39845 (Persistent connections generate a warning in pdo_pgsql). 2006-12-18 17:56:25 +00:00
Ilia Alshanetsky
bfa4af46e1 Fixed bug #39663 (Memory leak in pg_get_notify() and a possible memory
corruption on Windows in pgsql and pdo_pgsql extensions).
2006-11-29 15:45:59 +00:00
Ilia Alshanetsky
b43e18a70e Make quote() in PostgreSQL use PQescapeByteaConn() whenever possible for
binary strings.
2006-10-06 22:34:16 +00:00
Ilia Alshanetsky
40765184be Added support for character sets in PDO quote() method for PostgreSQL
8.1.4 and higher.
2006-10-04 23:53:36 +00:00
Ilia Alshanetsky
2332e4f9fc Fixed bug #37870 (pgo_pgsql tries to de-allocate unused statements).
Fixed bug #36681 (pdo_pgsql driver incorrectly ignored some errors).
Fixed test for bug #38253 not to use faulty SQL that generates errors in
PostgreSQL
2006-09-19 15:45:22 +00:00
Ilia Alshanetsky
79ebfe382b Fixed memory leaks when working with cursors in PDO PostgreSQL driver. 2006-05-08 14:33:00 +00:00
Wez Furlong
f83cfb77bf be aware of PDO_ATTR_EMULATE_PREPARES 2006-04-09 08:17:50 +00:00
Edin Kadribasic
c69f100d0e Fixed build 2006-03-13 11:37:51 +00:00
Derick Rethans
1a170a3de2 - Fixed bug #36382 (PDO/PgSQL's getColumnMeta() crashes). 2006-02-13 15:53:36 +00:00
Ilia Alshanetsky
9b0f4a6234 Fixed bug #36176 (PDO_PGSQL - PDO::exec() does not return number of rows
affected by the operation).
2006-01-29 17:35:54 +00:00
foobar
5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
Marcus Boerger
81c25d8700 - Get rid of compiler warnings (both postgres an dphp use these defines) 2005-12-20 21:10:43 +00:00
Marcus Boerger
5e223ad13b - Fix TSRM 2005-12-06 21:44:15 +00:00
foobar
3e669bc950 MFH: nuke php3 legacy 2005-12-06 02:28:41 +00:00
Ilia Alshanetsky
4e03ce9fc5 Fixed memory leaks 2005-12-01 16:33:01 +00:00
Ilia Alshanetsky
911355bee8 Fixed memory leak 2005-11-30 23:27:15 +00:00
Ilia Alshanetsky
d79e01e211 Fixed compiler warnings 2005-11-29 18:17:46 +00:00
Wez Furlong
40666b6708 proto fixups 2005-11-29 04:06:03 +00:00
Wez Furlong
131033352d Added PDO::pgsqlLOBCreate(), PDO::pgsqlLOBOpen() and PDO::pgsqlLOBUnlink(). 2005-11-29 02:11:39 +00:00
Wez Furlong
70331c361e Addresses #35338.
Postgres client API is pretty poor, so we have zero idea about the actual
parameter types in a statement.

We now defer the preparation of a statement until the first call to execute is
made.  At that point, we have the parameters defined by the calling script, so
we can use the typing specified there when we perform the prepare.

For PDO_PARAM_LOB parameters, we set the binary formatting flag.

We can't just set this flag for all parameters, because its meaning is not
"string data, counted length" but "data is in native format".  If this flag is
set for a numeric column and we send the number 1 formatted as a string, then
we will get an "insufficient data left in message" error message, because the
library was expecting sizeof(int4) bytes but only saw 1 byte for "1".

This is infuriating because we have no way to determine the datatypes for
parameters, and the type we explicitly set has to match the type in the
database.  The only choice we're left with is telling postgres to deduce the
type; we still have no idea what type was deduced.
2005-11-25 03:35:04 +00:00
foobar
23e671a51e - Bumber up year 2005-08-03 14:08:58 +00:00
Wez Furlong
79f3cb9856 Add PDO_PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT attribute, which, when set
to true, forces the driver to use PDO's own emulated prepared statement
support.

Why would you want that, considering that native prepared statements are
supposed to be the best thing ever?

"Often postgresql will have to plan the query without knowing the parameters -
and it will choose a bad plan.  In some cases it will plan based on the first
parameters you send. "

Ugh.  So now we have a way to let you decide that you know better than the
pgsql query planner.
2005-07-20 02:37:57 +00:00
Ilia Alshanetsky
858d827790 Added cursor closer handler.
Fixed memory leak.
2005-07-09 04:54:04 +00:00
Wez Furlong
529d8177fe Add early support for native prepared statements in pgsql.
Note that some tests now fail; if we can't resolve this in time for the beta,
the prepare code should be disabled (I'll add a flag for this later today).
2005-07-08 15:27:34 +00:00
Ilia Alshanetsky
6c332449f9 Use PQexecParams() when available, use original case in all other instances. 2005-07-07 13:35:39 +00:00
Ilia Alshanetsky
10e1eecf3f Leave it up to the user to decide if to escape the sequence name or not. 2005-07-07 02:17:20 +00:00
Ilia Alshanetsky
bcb447f6b8 Faster sequence id retrieval. 2005-07-07 00:52:19 +00:00