Matthew Bucci
66d8a3df0e
update sequence handling to support bigserial and serial types
2024-01-16 21:35:32 -08:00
Matthew Bucci
ade3d6ad87
handle case with keys across multiple columns with defined lengths
2024-01-11 01:28:43 -08:00
Matthew Bucci
8f1f65db47
handle tables with fixed key lengths
2024-01-11 01:10:57 -08:00
mattbucci
a90ab01a9b
handle table charsets
2024-01-08 05:08:57 +00:00
mattbucci
53125aec2d
Add support for keys with multiple values
2024-01-08 05:00:42 +00:00
mattbucci
5f27c893b3
Remove Default character set
2024-01-08 04:22:59 +00:00
mattbucci
aca566b8bf
pgrewrite should not remove IF NOT EXISTS
2024-01-08 04:13:06 +00:00
mattbucci
200dfaa0b2
Add space before replacements to avoid any issues with similar types
2024-01-08 04:08:35 +00:00
mattbucci
30f5bee84b
Merge remote-tracking branch 'origin/v3' into mb-fix-auto-increment
2024-01-08 01:14:46 +00:00
mattbucci
94259e408b
style fixes
2024-01-07 23:07:50 +00:00
laotoutou
1b08e302c0
bugfix: $dbname is not used in driver_pgsql.php
2023-12-31 13:32:41 +08:00
Matthew Bucci
f3a71be3f0
handle unique keys
2023-11-26 15:17:26 -08:00
Matthew Bucci
fd2467c00b
switch to serial numeric types
2023-11-26 15:07:33 -08:00
Matthew Bucci
cbd3d83918
postgres does support primary keys in the mysql format, we don't need to rewrite
2023-11-26 01:42:21 -08:00
Matthew Bucci
91f1612d10
add tests for table creation
2023-11-26 01:34:10 -08:00
Matthew Bucci
3d164e15a6
remove the field function because it's already accounted for in the rewriter
2023-11-10 11:24:49 -08:00
Matthew Bucci
2485f31cdc
Change connections to pass by reference to better emulate the mysqli driver
2023-11-10 11:11:04 -08:00
Matthew Bucci
54b4ffb4df
add connect error handling
2023-11-09 23:01:26 -08:00
Matthew Bucci
31ce063e06
ignore multi query as part of flush
2023-11-09 22:51:55 -08:00
Matthew Bucci
1f3692d4f9
implement pg_ping
2023-11-09 21:28:21 -08:00
Matthew Bucci
259a58b144
remove nonexistant PG_query mode
2023-11-09 21:24:38 -08:00
Matthew Bucci
20f0d7b9e9
driver fixes
2023-11-09 20:19:02 -08:00
Matthew Bucci
eb3a4c1711
port over what exists from the old pgsql driver
2023-11-09 19:53:49 -08:00
Matthew Bucci
50db9c8fd8
rewrite mysql driver implementation to replace mysqli instead of mysql
2023-11-09 09:34:33 -08:00
Matthew Bucci
e3f3682bc0
update wordpress dependency files for WP 6.4.1
2023-11-08 22:48:27 -08:00
Matthew Bucci
a810cfb7da
cleanup AlterTableSQLRewriter
2023-11-07 15:50:52 -08:00
Matthew Bucci
ed00779cf5
add connection to pg_last_error call
2023-11-07 15:32:19 -08:00
Matthew Bucci
dad1f0d264
formatting
2023-11-07 15:29:37 -08:00
Matthew Bucci
c60d8f90b1
Migrate install rewriting to new rewriters
2023-11-07 15:26:03 -08:00
Matthew Bucci
3754ae32e4
Change plugin info
2023-10-30 22:15:04 -07:00
Matthew Bucci
fa6222bdee
correct regex for insert matching
2023-10-30 21:02:50 -07:00
Matthew Bucci
63f3f092ba
ensure we don't pass null to trim during ensureGroupByOrAggregate
2023-10-30 15:20:15 -07:00
Matthew Bucci
ec9079d9c9
don't split on ',' if within a function
2023-10-30 14:24:27 -07:00
Matthew Bucci
9fda15b2da
correct DB_DRIVER define
2023-10-30 09:27:19 -07:00
Matthew Bucci
83002198b1
Polymorphic refactor + improvements to select sql rewriting
2023-10-28 02:56:41 -07:00
Matthew Bucci
a45338251e
Merge branch 'postgres15-compatibility' into mb-php8-wp6-support
2023-10-28 02:54:37 -07:00
Matthew Bucci
0e692fd263
Merge branch 'php8-compatiblity' into mb-php8-wp6-support
2023-10-28 02:54:19 -07:00
Matthew Bucci
8816e1dcaa
replace incorrect constant
2023-10-28 02:50:05 -07:00
Matthew Bucci
1bde430f0d
PHP 8 compatibility fixes
2023-10-28 02:43:59 -07:00
Matthew Bucci
aef2e89812
patches for postgres 15 compatibility, various warnings fixes and more
2023-10-28 02:27:14 -07:00
ycz
f2a05dddbe
fix meta_value compares bug
2019-07-23 21:19:40 +00:00
Alexander Schlarb
0607337f6b
Also check in the WordPress base directory for the PG4WP files
2018-03-17 14:43:04 +01:00
Kevin Locke
06884bd732
Move pg4wp_rewrite_field out of pg4wp_rewrite
...
To fix "Cannot redeclare pg4wp_rewrite_field"
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2017-09-24 15:41:21 -06:00
Kevin Locke
54042c1bcc
Convert MySQL RAND() to PostgreSQL RANDOM()
...
These functions are compatible, with the exception that MySQL RAND()
optionally takes a seed argument. If future queries require seed
support, a call to PostgreSQL SETSEED() can be added.
Fixes : #12
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2017-09-24 14:18:25 -06:00
Kevin Locke
f896bb1759
Rewrite MySQL FIELD function to CASE statement
...
PostgreSQL does not provide an equivalent to the MySQL FIELD function.
It is possible to create such a function, although the syntax is
version-dependent (and creates a persistent database object, which so
far has not been done by this plugin). So use a generic CASE statement.
Fixes : #12
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2017-09-24 14:07:40 -06:00
Kevin Locke
35e0af4252
Convert HAVING without GROUP BY to WHERE
...
Fixes #9
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2017-04-14 12:54:14 -06:00
Kevin Locke
6587b4085b
Create MySQL-compatible field function on connect
...
Fixes : #8
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2017-04-08 16:20:58 -06:00
Kevin Locke
1d2666ca1d
Remove unnecessary isset() before empty()
...
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2017-04-08 16:20:39 -06:00
Kevin Locke
7c4d76a0b6
Fix connection failure handling
...
If the connection fails, bail early. Otherwise the processing of the
queued SQL statements will cause an infinite loop by continually pushing
the same statement into the queue due to lack of connection.
Also add a local variable for the connection for clarity and
performance.
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2017-04-08 13:33:13 -06:00
Kevin Locke
68d8ead5ad
Partially revert 650f768
...
Although calling wpsql_select_db from wpsql_connect did set the
connection globally, it also caused early clearing of the connection
string when WP_INSTALLING is defined and ran queued early SQL commands
before select is called by external code (which was dubious). Revert
it, but keep using the best guess at the database name, since this often
saves a connection.
Signed-off-by: Kevin Locke <kevin@kevinlocke.name >
2016-08-22 18:21:10 -06:00