Michael Bayer wrote:

>ideally the truncation should be occuring at the SQL compilation  
>phase so you wouldnt have this problem.  i recall that being very  
>complex but i should take a look again to see if theres any major  
>barriers to that.
>
>but for now, sure, ive no problem with a module-level global.  just  
>be aware that if i fix this in a better way it might be removed in a  
>later release.
>  
>
actually, we have this restriction because Oracle and Firebird use short 
names.
May be you may assign the MAXLENGTH depending on the database, for example:

* MySQL = 64
* PostgreSQL = 64 - 1
* Firebird = 31 ?
* Oracle = 30
* MS-SQL = 128
* SQLite = no limites (The name and "CREATE TABLE" statement for a table 
must fit entirely within a 1-megabyte row of the SQLITE_MASTER table. 
Other than this, there are no constraints on the length of the name of a 
table, or on the number of columns, etc. Indices are similarly 
unconstrained).

>On Mar 16, 2007, at 4:05 PM, Jose Soares wrote:
>
>  
>
>>Hi Michael,
>>
>>I see that sql.py uses a limit of 30 characters to create the column
>>label when "use_labels" is set to True.
>>If name is greater than 30 char long, the label is trunked at position
>>24 and is appended a random integer to it.
>>Since the name created in this way is less useful, I would like to
>>sugest you to customize the maxlength of column names.
>>(PostgreSQL accepts until 63 characters for names, with SQLite you may
>>use very, very long names....)
>>
>>    
>>


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to