LazyRecord\SqlBuilder\MysqlBuilder::createTable PHP Method

createTable() public method

public createTable ( LazyRecord\Schema\SchemaInterface $schema )
$schema LazyRecord\Schema\SchemaInterface
    public function createTable(SchemaInterface $schema)
    {
        $sql = 'CREATE TABLE ';
        $sql .= ' IF NOT EXISTS ';
        $sql .= $this->driver->quoteIdentifier($schema->getTable());
        $sql .= " (\n";
        $columnSqls = array();
        foreach ($schema->columns as $name => $column) {
            if ($column->virtual) {
                continue;
            }
            $columnSqls[] = '  ' . $this->buildColumnSql($schema, $column);
        }
        $referencesSqls = $this->buildForeignKeys($schema);
        $sql .= implode(",\n", array_merge($columnSqls, $referencesSqls));
        $sql .= "\n);\n";
        return $sql;
    }