Jira issue originally created by user jflatnes:
The MySqlPlatform has a method getCollationFieldDeclaration(). As far as I can tell, that method's not actually used for anything.
However, looking at the other Platforms and the AbstractPlatform, it looks like this method is what is elsewhere called getColumnCollationDeclarationSQL().
The AbstractPlatform calls getColumnCollationDeclarationSQL() when getting the SQL for a column with a "collation" set; for MySQL, this currently causes no effect since the default, blank implementation from the AbstractPlatform is being used.
It looks like the name of this method should be changed.
Comment created by jflatnes:
The current name of the method looks like it dates back to the initial refactorings for Doctrine 2. No other methods there still use the "Field" terminology in the method name, and all the others that return snippets of SQL uniformly use "DeclarationSQL" instead of just "Declaration".
That combined with the different name for seemingly the same method in the AbstractPlatform and SQLServerPlatform makes it seem like this one just got left behind.
Comment created by @deeky666:
The reason for this diverge in implementation and terminology is that there still is an open PR that enables support for column collation declaration on capable platforms which is not yet merged:
Partial support for SQL Server has already been merged in:
This feature is nearly finished and about to be merged. AbstractPlatform::getCollationFieldDeclaration() will be deprecated then to ensure BC. Does that answer your question? =) If so, can this ticket be closed?
I believe that does answer my question.
One little thing: when you say AbstractPlatform::getCollationFieldDeclaration() will be deprecated, you mean the one on MysqlPlatform, right? I believe there is no such method on the AbstractPlatform.
Yes it will be deprecated in MySQLPlatform. See the PR.
Can you tell me what is still unclear? Or what you'd expect of this ticket?
Okay, then I think it was just a typo in your first comment.
PR #245 on Github seems like it covers this squarely, so I suppose this issue doesn't stand for much on its own.
Issue was closed with resolution "Duplicate"
You are right it was not supposed to be AbstractPlatform but MySQLPlatform :)
Comment created by @doctrinebot:
A related Github Pull-Request [GH-245] was closed:
A related Github Pull-Request [GH-274] was closed:
A related Github Pull-Request [GH-274] was assigned: