Author: echuck
Date: 2005-03-11 19:53:51 -0700 (Fri, 11 Mar 2005)
New Revision: 2095
Modified:
Webware/trunk/MiddleKit/Design/MySQLSQLGenerator.py
Webware/trunk/MiddleKit/Design/SQLGenerator.py
Log:
Add a writePostCreateTable() hook for SQL generators.
Add a new StartingSerialNum setting (only for MySQL at this time).
Modified: Webware/trunk/MiddleKit/Design/MySQLSQLGenerator.py
===================================================================
--- Webware/trunk/MiddleKit/Design/MySQLSQLGenerator.py 2005-03-12 02:52:13 UTC (rev 2094)
+++ Webware/trunk/MiddleKit/Design/MySQLSQLGenerator.py 2005-03-12 02:53:51 UTC (rev 2095)
@@ -37,6 +37,11 @@
class Klass:
+ def writePostCreateTable(self, generator, out):
+ start = self.setting('StartingSerialNum', None)
+ if start:
+ out.write('alter table %s auto_increment=%s;\n' % (self.sqlTableName(), start))
+
def primaryKeySQLDef(self, generator):
return ' %s int not null primary key auto_increment,\n' % self.sqlSerialColumnName().ljust(self.maxNameWidth())
Modified: Webware/trunk/MiddleKit/Design/SQLGenerator.py
===================================================================
--- Webware/trunk/MiddleKit/Design/SQLGenerator.py 2005-03-12 02:52:13 UTC (rev 2094)
+++ Webware/trunk/MiddleKit/Design/SQLGenerator.py 2005-03-12 02:53:51 UTC (rev 2095)
@@ -446,6 +446,7 @@
attr.writeAuxiliaryCreateTable(generator, out)
if not self.isAbstract():
self.writeCreateTable(generator, out)
+ self.writePostCreateTable(generator, out)
def writeCreateTable(self, generator, out):
name = self.name()
@@ -481,6 +482,9 @@
for attr in self.allAttrs():
attr.containingKlass = None
+ def writePostCreateTable(self, generator, out):
+ pass
+
def primaryKeySQLDef(self, generator):
"""
Returns a one liner that becomes part of the CREATE statement
|