BUG Enum value change wasn't being detected by alterTableAlterColumn because backslashes were not accounting
This commit is contained in:
parent
d607a2bfa9
commit
fa7ac8b134
|
@ -494,9 +494,15 @@ class PostgreSQLSchemaManager extends DBSchemaManager
|
||||||
// First, we split the column specifications into parts
|
// First, we split the column specifications into parts
|
||||||
// TODO: this returns an empty array for the following string: int(11) not null auto_increment
|
// TODO: this returns an empty array for the following string: int(11) not null auto_increment
|
||||||
// on second thoughts, why is an auto_increment field being passed through?
|
// on second thoughts, why is an auto_increment field being passed through?
|
||||||
|
$pattern = '/^([\w(\,)]+)\s?((?:not\s)?null)?\s?(default\s[\w\.\'\\\\]+)?\s?(check\s[\w()\'",\s\\\\]+)?$/i';
|
||||||
$pattern = '/^([\w(\,)]+)\s?((?:not\s)?null)?\s?(default\s[\w\.\']+)?\s?(check\s[\w()\'",\s]+)?$/i';
|
|
||||||
preg_match($pattern, $colSpec, $matches);
|
preg_match($pattern, $colSpec, $matches);
|
||||||
|
// example value this regex is expected to parse:
|
||||||
|
// varchar(255) not null default 'SS\Test\Player' check ("ClassName" in ('SS\Test\Player', 'Player', null))
|
||||||
|
// split into:
|
||||||
|
// * varchar(255)
|
||||||
|
// * not null
|
||||||
|
// * default 'SS\Test\Player'
|
||||||
|
// * check ("ClassName" in ('SS\Test\Player', 'Player', null))
|
||||||
|
|
||||||
if (sizeof($matches) == 0) {
|
if (sizeof($matches) == 0) {
|
||||||
return '';
|
return '';
|
||||||
|
|
Loading…
Reference in New Issue