Details
Description
Methods in the MySql Platform that use the table name are not escaping the table name. This causes problems when your table name is the same as a reserved word in MySql. Example:
public function getListTableConstraintsSQL($table)
{ return 'SHOW INDEX FROM ' . $table; }If my table name is User this method will fail and cause a SQL error because the word User is a reserved word in MySql. You need to escape the table name with backticks to prevent these errors. Example:
public function getListTableConstraintsSQL($table)
{ return 'SHOW INDEX FROM `' . $table . '`'; }I encountered this problem while reverse engineering my existing MySql database. I've attached a fixed version that solved my reverse engineering problems.
Issue Links
- duplicates
-
DBAL-91
orm:convert-mapping SchemaException on Postgres reserved words
-
Activity
| Field | Original Value | New Value |
|---|---|---|
| Status | Open [ 1 ] | Resolved [ 5 ] |
| Resolution | Duplicate [ 3 ] |
| Link | This issue duplicates DDC-976 [ DDC-976 ] |
| Resolution | Duplicate [ 3 ] | |
| Status | Resolved [ 5 ] | Reopened [ 4 ] |
| Status | Reopened [ 4 ] | Resolved [ 5 ] |
| Fix Version/s | 2.0.2 [ 10118 ] | |
| Fix Version/s | 2.1 [ 10068 ] | |
| Resolution | Fixed [ 1 ] |
| Workflow | jira [ 12373 ] | jira-feedback2 [ 17695 ] |
| Workflow | jira-feedback2 [ 17695 ] | jira-feedback3 [ 20050 ] |
- Request to http://www.doctrine-project.org/fisheye/ failed: Error in remote call to 'FishEye 0 (http://www.doctrine-project.org/fisheye/)' (http://www.doctrine-project.org/fisheye) [AbstractRestCommand{path='/rest-service-fe/search-v1/crossRepositoryQuery', params={query=DBAL-88, expand=changesets[-21:-1].revisions[0:29],reviews}, methodType=GET}] : Received status code 503 (Service Temporarily Unavailable)
Duplicate of DDC-976