@@ -197,6 +197,8 @@ var Base = Class.extend({
197
197
198
198
var columnDefs = [ ] ;
199
199
var foreignKeys = [ ] ;
200
+ var extensions = '' ;
201
+ var tableOptions = '' ;
200
202
201
203
for ( var columnName in columnSpecs ) {
202
204
var columnSpec = columnSpecs [ columnName ] ;
@@ -207,8 +209,16 @@ var Base = Class.extend({
207
209
foreignKeys . push ( constraint . foreignKey ) ;
208
210
}
209
211
210
- var sql = util . format ( 'CREATE TABLE %s %s (%s%s)' , ifNotExistsSql ,
211
- this . escapeDDL ( tableName ) , columnDefs . join ( ', ' ) , pkSql ) ;
212
+ if ( typeof ( this . _applyExtensions ) === 'function' ) {
213
+ extensions = this . _applyExtensions ( options ) ;
214
+ }
215
+
216
+ if ( typeof ( this . _applyTableOptions ) === 'function' ) {
217
+ tableOptions = this . _applyTableOptions ( options ) ;
218
+ }
219
+
220
+ var sql = util . format ( 'CREATE TABLE %s %s (%s%s%s) %s' , ifNotExistsSql ,
221
+ this . escapeDDL ( tableName ) , columnDefs . join ( ', ' ) , extensions , tableOptions , pkSql ) ;
212
222
213
223
return this . runSql ( sql )
214
224
. then ( function ( )
@@ -246,8 +256,14 @@ var Base = Class.extend({
246
256
247
257
var def = this . createColumnDef ( columnName ,
248
258
this . normalizeColumnSpec ( columnSpec ) , { } , tableName ) ;
249
- var sql = util . format ( 'ALTER TABLE %s ADD COLUMN %s' ,
250
- this . escapeDDL ( tableName ) , def . constraints ) ;
259
+ var extensions = '' ;
260
+
261
+ if ( typeof ( this . _applyAddColumnExtension ) === 'function' ) {
262
+ extensions = this . _applyAddColumnExtension ( def ) ;
263
+ }
264
+
265
+ var sql = util . format ( 'ALTER TABLE %s ADD COLUMN %s %s' ,
266
+ this . escapeDDL ( tableName ) , def . constraints , extensions ) ;
251
267
252
268
return this . runSql ( sql )
253
269
. then ( function ( )
0 commit comments