in core/lib/sqlparse/models.py [0:0]
def to_sql(self):
"""
A standardize CREATE TABLE statement for creating the table
"""
sql = "CREATE TABLE `{}` (\n".format(escape(self.name))
col_strs = []
for column in self.column_list:
col_strs.append(" " + column.to_sql())
sql += ",\n".join(col_strs)
if self.primary_key.column_list:
sql += ",\n {}".format(self.primary_key.to_sql())
if self.indexes:
for idx in self.indexes:
sql += ",\n " + idx.to_sql()
sql += "\n) "
if self.engine is not None:
sql += "ENGINE={} ".format(self.engine)
if self.auto_increment is not None:
sql += "AUTO_INCREMENT={} ".format(self.auto_increment)
if self.charset is not None:
sql += "DEFAULT CHARSET={} ".format(self.charset)
if self.collate is not None:
sql += "COLLATE={} ".format(self.collate)
if self.row_format is not None:
sql += "ROW_FORMAT={} ".format(self.row_format)
if self.key_block_size is not None:
sql += "KEY_BLOCK_SIZE={} ".format(self.key_block_size)
if self.compression is not None:
sql += "COMPRESSION={} ".format(self.compression)
if self.comment is not None:
sql += "COMMENT={} ".format(self.comment)
if self.partition is not None:
sql += "\n{} ".format(self.partition)
return sql