[DC-1027] CLONE -Foreign key creation fails with MySQL 5.1.54 Created: 16/Aug/11  Updated: 16/Aug/11  Resolved: 16/Aug/11

Status: Resolved
Project: Doctrine 1
Component/s: Import/Export
Affects Version/s: 1.2.0
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Frej Connolly Assignee: Jonathan H. Wage
Resolution: Invalid Votes: 0
Labels: None
Environment:

gentoo, MySQL 5.0.44-log, Doctrine 1.2, symfony 1.4.4



 Description   

Hi there,

When executing symfony doctrine:build --all --and-load on a machine using Mysql 5.0.44 I get the following error:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'dimension(id)' at line 1. Failing Query: "ALTER TABLE kpi_dimension ADD CONSTRAINT kpi_dimension_dimension_id_dimension_id FOREIGN KEY (dimension_id) REFERENCES dimension(id)".

The problem can be fixed by adding a space between the table name and the column name that is referenced. So instead of
REFERENCES dimension(id)
it should be
REFERENCES dimension (id)

Since it works fine on MySQL 5.1.37, I normally would file this under Mysql bug. But as the syntax for a foreign key constraint in MySQL mentions this space it should be ok to simply add the space to the script creating the sql for the foreign key. I have not tried any other DBMS though.

The patch for the file Export.php is attached.

Best regards

Claudia


Generated at Wed Nov 26 05:41:04 UTC 2014 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.