addCreateViewStatement method
Implementation
void addCreateViewStatement(CreateViewStatement create) {
final view = create.entity;
if (view.sqlDefinition case final sql?) {
sql.compileWith(this);
} else {
_generatingCreateView = create.entity;
statement.supportsVariables = false;
statement.buffer.write('CREATE VIEW ');
if (create.ifNotExists) {
statement.buffer.write('IF NOT EXISTS ');
}
addReference(view.aliasOrName);
statement.buffer.write('(');
for (final (i, column) in view.columns.indexed) {
if (i != 0) statement.comma();
addReference(column.name);
}
statement.buffer.write(') AS ');
view.query!.compileWith(this);
}
}