On Sun, 30 Dec 2001 20:14:33 -0800, Chuck Esterbrook wrote: >On Friday 28 December 2001 12:03 pm, Stefan Karlsson wrote: >> Tip: If you want to have very simple MK/MySQL support of >>transactions >> you can do like this (at least it works for me :-). >> >> 1) Subclass MySQLObjectStore and override saveChanges: >> >> class MyMySQLObjectStore(MySQLObjectStore): >> def saveChanges(self): >> self.executeSQL('BEGIN') >> try: >> MySQLObjectStore.saveChanges(self) >> except Exception, e: >> self.executeSQL('ROLLBACK') >> raise e >> else: >> self.executeSQL('COMMIT') > >Should this also be a setting?
Maybe a good idea > > 'SQLSaveChanges': ['BEGIN', 'ROLLBACK', 'COMMIT'], > >Or are these always the same? So then: > > 'SQLCommitOrRollBack': 1, > >(Most of my experience is with MySQL so I'm less familar with other >db's.) BEGIN, ROLLBACK and COMMIT also work in Postgres, don't know about other db's. > > >> 3) Edit GeneratedSQL/Create.sql and add TYPE=InnoDB after every >> create table: >> >> create table MyClass ( >> myClassId int not null primary key >> auto_increment, ) TYPE=InnoDB; >> >> >> The last step must be repeated every time you generate your SQL >>files >> from the object model :-( >> But if we ask Chuck kindly he might fix this in the MK generate >>stuff >> :-). It would be perfect if one could set an option in >> Settings.config, like 'MySQLTableType':'InnoDB'. > > >I agree that a setting is the way to go. Is there a notion of "table >type" in any other flavor of SQL? Perhaps the setting should just be >"SQLTableType". I think this is not standard. I only know MySQL having table types. /Stefan _______________________________________________ Webware-discuss mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/webware-discuss