<p dir="auto"><strong>Migrated issue, originally created by Michael Bayer (<a href="https://github.com/zzzeek">@zzzeek</a>)</strong></p>
<p dir="auto">we are now building up a bunch of code that is aliasing tables and labeling columns.  the old "concatentation" methodologies dont work as most DB's have all kinds of restrictions on identifier lengths.  right now we use random hex strings.  so heres the ticket:</p>
<ul dir="auto">
<li>the algorithm should be changed to use an HMAC scheme that will return the same results each time for the same given name, to make it easier to write external SQL code, to enable unit tests, and to make echo'ed output easier to read.</li>
<li>all names should be limited to 30 characters (configurable. compiler-dependent ?)</li>
<li>the names should have only four hex characters at the end of the string, instead of clumps of hex characters as occurs now when you have a table alias combined into a column label.</li>
<li>groups of columns that are linked to the same table should <em>preferably</em> have the same four-digit grouping (though this may break their uniqueness if names are truncated)</li>
<li>bind parameters still have hardcoded "table_column" strings being used as identifiers, particularly in the mapper code where one piece of code sets up a bind dictionary and another reads/populates it.  these should be abstracted away as well and probably derive from the column._label in all cases.</li>
<li>the "label" accessor on ColumnClause should be marked non-private</li>
</ul>
<p dir="auto"><strong>Migrated issue, originally created by Anonymous</strong></p>
<p dir="auto">There's a simple typo in the reflection code for MySQL tables when discovering the collation of a column entry. See attached patch.</p>
<hr>
<p dir="auto">Attachments: <a href="../wiki/imported_issue_attachments/1686/mysql_collation_reflection.diff">mysql_collation_reflection.diff</a></p>