Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
doctrine-dbal
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Tomáš Trávníček
doctrine-dbal
Commits
27d33238
Commit
27d33238
authored
Jul 15, 2016
by
Marco Pivetta
Committed by
GitHub
Jul 15, 2016
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #2286 from deeky666/fix-mysql-list-fk-db-evaluation
Fix list foreign keys SQL database parameter evaluation
parents
e4c143f0
f223b0b8
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
14 additions
and
7 deletions
+14
-7
MySqlPlatform.php
lib/Doctrine/DBAL/Platforms/MySqlPlatform.php
+1
-4
AbstractMySQLPlatformTestCase.php
...ne/Tests/DBAL/Platforms/AbstractMySQLPlatformTestCase.php
+13
-3
No files found.
lib/Doctrine/DBAL/Platforms/MySqlPlatform.php
View file @
27d33238
...
...
@@ -200,10 +200,7 @@ class MySqlPlatform extends AbstractPlatform
" c.constraint_name = k.constraint_name AND "
.
" c.table_name =
$table
*/ WHERE k.table_name =
$table
"
;
// @TODO: This needs fixing. The condition has to be inverted.
// When fixed, AbstractMySQLPlatformTestCase::testQuotesDatabaseNameInListTableForeignKeysSQL test
// has to be completed.
$databaseNameSql
=
null
===
$database
?
$database
:
'DATABASE()'
;
$databaseNameSql
=
null
===
$database
?
'DATABASE()'
:
$database
;
$sql
.=
" AND k.table_schema =
$databaseNameSql
/*!50116 AND c.constraint_schema =
$databaseNameSql
*/"
;
$sql
.=
" AND k.`REFERENCED_COLUMN_NAME` is not NULL"
;
...
...
tests/Doctrine/Tests/DBAL/Platforms/AbstractMySQLPlatformTestCase.php
View file @
27d33238
...
...
@@ -415,7 +415,7 @@ abstract class AbstractMySQLPlatformTestCase extends AbstractPlatformTestCase
$sql
=
$this
->
_platform
->
getAlterTableSQL
(
$diff
);
$this
->
assertEquals
(
array
(
"ALTER TABLE mytable DROP PRIMARY KEY"
,
"ALTER TABLE mytable DROP PRIMARY KEY"
,
"ALTER TABLE mytable ADD PRIMARY KEY (foo)"
,
),
$sql
);
}
...
...
@@ -799,8 +799,6 @@ abstract class AbstractMySQLPlatformTestCase extends AbstractPlatformTestCase
*/
public
function
testQuotesDatabaseNameInListTableForeignKeysSQL
()
{
$this
->
markTestIncomplete
(
'Test does not work due to a bug in MySqlplatform::getListTableForeignKeysSQL'
);
$this
->
assertContains
(
"'Foo''Bar
\\\\
'"
,
$this
->
_platform
->
getListTableForeignKeysSQL
(
'foo_table'
,
"Foo'Bar
\\
"
),
''
,
true
);
}
...
...
@@ -819,4 +817,16 @@ abstract class AbstractMySQLPlatformTestCase extends AbstractPlatformTestCase
{
$this
->
assertContains
(
"'Foo''Bar
\\\\
'"
,
$this
->
_platform
->
getListTableColumnsSQL
(
'foo_table'
,
"Foo'Bar
\\
"
),
''
,
true
);
}
public
function
testListTableForeignKeysSQLEvaluatesDatabase
()
{
$sql
=
$this
->
_platform
->
getListTableForeignKeysSQL
(
'foo'
);
$this
->
assertContains
(
'DATABASE()'
,
$sql
);
$sql
=
$this
->
_platform
->
getListTableForeignKeysSQL
(
'foo'
,
'bar'
);
$this
->
assertContains
(
'bar'
,
$sql
);
$this
->
assertNotContains
(
'DATABASE()'
,
$sql
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment