LazyRecord\SqlBuilder\BaseBuilder::createTable PHP Method

createTable() public method

public createTable ( LazyRecord\Schema\SchemaInterface $schema )
$schema LazyRecord\Schema\SchemaInterface
    public function createTable(SchemaInterface $schema)
    {
        $sql = 'CREATE TABLE ' . $this->driver->quoteIdentifier($schema->getTable()) . " ( \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;
    }