Update of /cvsroot/webware/Webware/MiddleKit/Design
In directory usw-pr-cvs1:/tmp/cvs-serv322/Design
Modified Files:
SQLGenerator.py
Log Message:
- support new 'Database' setting
Index: SQLGenerator.py
===================================================================
RCS file: /cvsroot/webware/Webware/MiddleKit/Design/SQLGenerator.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** SQLGenerator.py 8 Aug 2002 19:55:49 -0000 1.25
--- SQLGenerator.py 26 Oct 2002 07:37:14 -0000 1.26
***************
*** 23,27 ****
For subclassers:
! - Subclasses should be name <DATABASE>SQLGenerator where <DATABASE> is the name of the particular database product.
- A good example of a custom subclass is MySQLSQLGenerator.py. Be sure to take a look at it.
- Candidates for customization include:
--- 23,27 ----
For subclassers:
! - Subclasses should be named <DATABASE>SQLGenerator where <DATABASE> is the name of the particular database product.
- A good example of a custom subclass is MySQLSQLGenerator.py. Be sure to take a look at it.
- Candidates for customization include:
***************
*** 34,42 ****
"""
! def dbName(self):
"""
! Returns the name of the database by asked the generator's model for dbName().
"""
! return self.model().dbName()
def configFilename(self):
--- 34,43 ----
"""
! def sqlDatabaseName(self):
"""
! Returns the name of the database by asking the generator's
! model.
"""
! return self.model().sqlDatabaseName()
def configFilename(self):
***************
*** 85,96 ****
self._klasses.writeCreateSQL(generator, os.path.join(dirname, 'Create.sql'))
! def dbName(self):
! """ Returns the name of the database, which is currently always equal to self.name(). """
! return self.name()
def writeInsertSamplesSQL(self, generator, dirname):
if self._filename is not None:
file = open(os.path.join(dirname, 'InsertSamples.sql'), 'w')
! file.write('use %s;\n\n' % self.dbName())
self._klasses.writeDeleteAllRecords(generator, file)
filenames = glob(os.path.join(self._filename, 'Sample*.csv'))
--- 86,103 ----
self._klasses.writeCreateSQL(generator, os.path.join(dirname, 'Create.sql'))
! def sqlDatabaseName(self):
! """
! Returns the name of the database (which is either the 'Database'
! setting or self.name()).
! """
! name = self.setting('Database', None)
! if name is None:
! name = self.name()
! return name
def writeInsertSamplesSQL(self, generator, dirname):
if self._filename is not None:
file = open(os.path.join(dirname, 'InsertSamples.sql'), 'w')
! file.write('use %s;\n\n' % self.sqlDatabaseName())
self._klasses.writeDeleteAllRecords(generator, file)
filenames = glob(os.path.join(self._filename, 'Sample*.csv'))
***************
*** 237,241 ****
wr('/* PreSQL start */\n' + sql + '\n/* PreSQL end */\n\n')
! dbName = generator.dbName()
drop = generator.setting('DropStatements')
if drop=='database':
--- 244,248 ----
wr('/* PreSQL start */\n' + sql + '\n/* PreSQL end */\n\n')
! dbName = generator.sqlDatabaseName()
drop = generator.setting('DropStatements')
if drop=='database':
|