tml wrote:
>
> also to clarify, the text actually has :table_name used in many other
> places:
>
> t = metadata.engine.text("LOCK TABLE :table_name WRITE; "
> "UPDATE :table_name SET rgt=rgt +
> 2 WHERE rgt > :insert_node_val and parent_id = :parent_id;"
> "UPDATE :table_name SET lft=lft +
> 2 WHERE lft > :insert_node_val and parent_id = :parent_id;"
> ......
>
> so if i had it as %s, i would have to repeat the same name
> multiple times in % (name, name, name). I'm ok with this,
> just curious if there is a better way.
>
I don't think bind parameters can be used for table names, so you are
stuck with python format strings, but you can use a dictionary instead
of a tuple when formatting strings. Instead of using %s, you use
%(name)s, and instead of the tuple (name, name, name) you pass a single
dictionary {'name': <your_table_name>}
http://docs.python.org/lib/typesseq-strings.html
Hope that helps,
Simon
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---