########################################################## from sqlalchemy import * meta = BoundMetaData('sqlite://', echo=False)
# Parents table. parents = Table('parents', meta, Column("id", Integer, primary_key=True), Column("data", String(50), nullable=False) ) # Children_1 Table. children_1 = Table('children_1', meta, Column("id", Integer, primary_key=True), Column("data", String(50), nullable=False) ) # Children_2 Table. children_2 = Table('children_2', meta, Column("id", Integer, primary_key=True), Column("data", String(50)) ) # Association Table. # This is a generic table which can relate anything to parent. assoc = Table('assoc', meta, # parents.c.id Column("parent_id", Integer, ForeignKey(parents.c.id)), # associate's id either children_1.c.id or children_2.c.id or any other child. Column("assoc_id", Integer), # Which can be either 'child_1' or 'child_2' for now (can be used for extending children # type, decides which table to look in. Column("assoc_type", String(20)) ) ####################################################### I am a novice with respect to sqlalchemy & may be RDBMS as well. How would you like to work on this scenario to achieve backwards cascading (may not be the right word) which means when one deletes one specific child from children_1 table (for example), there should not be any association entry, which associates that child to the parent, in the association table as well? --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---