columnType) * @param string|string[] $primaryKey one or multiple columns that define the primary key */ public function __construct($table, $columnNames, $primaryKey) { $columns = array(); foreach ($columnNames as $column => $type) { $columns[] = sprintf('`%s` %s', $column, $type); } if (!empty($primaryKey)) { $columns[] = sprintf('PRIMARY KEY ( `%s` )', implode('`, `', $primaryKey)); } $sql = sprintf( 'CREATE TABLE `%s` (%s) %s', $table, implode(', ', $columns), Schema::getInstance()->getTableCreateOptions() ); parent::__construct($sql, static::ERROR_CODE_TABLE_EXISTS); } }