Sparx Systems Forum
Enterprise Architect => Bugs and Issues => Topic started by: fp123 on July 08, 2016, 04:45:33 pm
-
After transferring our project to MySql DB I receive the following error when clicking on any object in any diagram:
"Microsoft OLE DB Provider for ODBC Drivers [-2147217900]
[MySQL][ODBC 5.3(w) Driver][mysqld-5.0.45-community-nt]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 'Precision, Scale,
Const, Style, Classifier, Default, Type, StyleEx
FROM t_attr' at line 3
Context:
SELECT
Name, Scope, Stereotype, Containment, IsStatic, IsCollection, IsOrdered, AllowDuplicates,
LowerBound, UpperBound, Container, Notes, Derived, ID, GenOption, Length, Precision, Scale,
Const, Style, Classifier, Default, Type, StyleEx
FROM t_attribute
WHERE t_attribute.Object_ID = 20243"
I searched the DB for this Item but in the table "t_attributes" there's no object_id 20243.
Before transferring the model to the DB, I started the Project integrity check with "recover/clean" option checked.
I also ran the sql script "EASchema_851_MySQL_InnoDB.sql" on the DB.
After that I used "Project Transfer File to DBMS" to transfer the model to the DB with no errors.
Can anyone give advice on how to fix the error?
-
I've also tried a newer version of MySQL (5.6.11) an the newer script "EASchema_Alter851to1220_MySQL.sql" with the same effect. The I tried to load a smaller Project to the same database. In this case the errors don't seem to happen.
Now I think, this should be an Error in the project file, not in the database.
-
Check EA's documentation, which versions of the MySQL ODBC is supported. I remember some limitations.
q.
-
I've already tried v5.3.6, v5.2.4, v5.1.13 and 5.1.6 all with the same result. The one recommended by Sparx (5.1.5) is only available as source code from MySQL.
-
The error always happens if I klick on an object like a component, interface in a diagram. Not on connectors or something in the Project Browser.
-
Just poking in the fog: can you try to execute the above SQL in the scratchpad of EA?
q.
-
Executed in MySQL Workbench I get exactlx the same error message like in EA.
-
Same for the scratchpad in EA.
-
Maybe Type, Const or another one is a reserved word and needs to be quoted. In any case you should contact Sparx support via mail.
q.
P.S. For EAP the SQL works. It highlights Precision and Default, though.
-
Have you remembered to set the options int he odbc driver?
(from memory)
- allow large result sets
- returned number of rows instead of matched rows
Geert
-
My next guess is, that your server rather than the ODBC version is not supported.
q.
-
Thanks for your help guys.
I've set the options in the ODBC connector and also tried multiple versions of the connector ( v5.3.6, v5.2.4, v5.1.13 and 5.1.6) and MySQL database (5.0.45 and 5.6.11).
Sparx recommends ODBC driver v5.1.5, but this one is only available as source code from MySQL.
Support was contacted but needs much time to answer.
-
Hi,
I just want to provide some feedback about the Solution of this Problem.
The failure was not caused by EA itself, but by one of our PlugIns, that had not been modified for using a DB based EA-project.