On Jan 9, 2008, at 11:27 AM, Rick Morrison wrote:
> Alright, I found this annoying little ?&!#$*& > > Happens when an MSSQL metadata.drop_all(checkfirst=True) is > executed. That causes a query to the INFORMATION_SCHEMA to be run. > > If you look at databases/information_schema.py, you'll see all the > nice non-length strings that are generating the problem. I'm not > sure it makes sense to change the String columns to TEXT, though -- > they have very different semantics in MSSQL. > > What exactly is so horrible about an non-length string again? actually that explaination makes no sense. the warning is only raised when that "_for_ddl" flag is True which should *only* occur during CREATE TABLE. the issue is only with CREATE TABLE. String(20) produces VARCHAR(20), whereas String() produces TEXT or CLOB; those latter types have *very* different behavior than a VARCHAR (cant be indexed, like() is much slower, cant be an FK/PK, etc.) so we'd like the types system to be less casual about this behavior. Using String with no length just for expressions or tables that arent created from SA are not an issue which is why the "length" parameter remains optional. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to [email protected] 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 -~----------~----~----~----~------~----~------~--~---
