public string GetCreationSql() { var sbSql = new StringBuilder(50); sbSql.Append("CREATE SCHEMA "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); if (Authorization != null) { sbSql.Append(" AUTHORIZATION "); sbSql.Append(PgDiffUtils.GetQuotedName(Authorization)); } sbSql.Append(';'); if (!string.IsNullOrEmpty(Comment)) { sbSql.Append("\n\nCOMMENT ON SCHEMA "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" IS "); sbSql.Append(Comment); sbSql.Append(';'); } return(sbSql.ToString()); }
public string GetCreationSql() { var sbSql = new StringBuilder(100); sbSql.Append("CREATE "); if (Unique) { sbSql.Append("UNIQUE "); } sbSql.Append("INDEX "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" ON "); sbSql.Append(PgDiffUtils.GetQuotedName(TableName)); sbSql.Append(' '); sbSql.Append(Definition); sbSql.Append(';'); if (!string.IsNullOrEmpty(Comment)) { sbSql.Append("\n\nCOMMENT ON INDEX "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" IS "); sbSql.Append(Comment); sbSql.Append(';'); } return(sbSql.ToString()); }
public string GetCreationSql() { var sbSql = new StringBuilder(500); sbSql.Append("CREATE OR REPLACE FUNCTION "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append('('); var addComma = false; foreach (var argument in _arguments) { if (addComma) { sbSql.Append(", "); } sbSql.Append(argument.GetDeclaration(true)); addComma = true; } sbSql.Append(") "); sbSql.Append(Body); sbSql.Append(';'); if (!string.IsNullOrEmpty(Comment)) { sbSql.Append("\n\nCOMMENT ON FUNCTION "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append('('); addComma = false; foreach (var argument in _arguments) { if (addComma) { sbSql.Append(", "); } sbSql.Append(argument.GetDeclaration(false)); addComma = true; } sbSql.Append(") IS "); sbSql.Append(Comment); sbSql.Append(';'); } return(sbSql.ToString()); }
public string GetOwnedBySql() { var sbSql = new StringBuilder(100); sbSql.Append("ALTER SEQUENCE "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); if (!string.IsNullOrEmpty(OwnedBy)) { sbSql.Append("\n\tOWNED BY "); sbSql.Append(OwnedBy); } sbSql.Append(';'); return(sbSql.ToString()); }
public string GetDropSql() { return($"DROP VIEW {PgDiffUtils.GetQuotedName(Name)};"); }
public string GetCreationSql() { var sbSql = new StringBuilder(Query.Length * 2); sbSql.Append("CREATE VIEW "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); if (ColumnNames != null && ColumnNames.Count > 0) { sbSql.Append(" ("); for (var i = 0; i < ColumnNames.Count; i++) { if (i > 0) { sbSql.Append(", "); } sbSql.Append(PgDiffUtils.GetQuotedName(ColumnNames[i])); } sbSql.Append(')'); } sbSql.Append(" AS\n\t"); sbSql.Append(Query); sbSql.Append(';'); foreach (var defaultValue in DefaultValues) { sbSql.Append("\n\nALTER VIEW "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" ALTER COLUMN "); sbSql.Append(PgDiffUtils.GetQuotedName(defaultValue.ColumnName)); sbSql.Append(" SET DEFAULT "); sbSql.Append(defaultValue._DefaultValue); sbSql.Append(';'); } if (!string.IsNullOrEmpty(Comment)) { sbSql.Append("\n\nCOMMENT ON VIEW "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" IS "); sbSql.Append(Comment); sbSql.Append(';'); } foreach (var columnComment in ColumnComments) { if (!string.IsNullOrEmpty(columnComment.Comment)) { sbSql.Append("\n\nCOMMENT ON COLUMN "); sbSql.Append(PgDiffUtils.GetQuotedName(columnComment.ColumnName)); sbSql.Append(" IS "); sbSql.Append(columnComment.Comment); sbSql.Append(';'); } } return(sbSql.ToString()); }
public string GetCreationSql() { var sbSql = new StringBuilder(1000); sbSql.Append("CREATE TABLE "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" (\n"); var first = true; if (Columns.Count == 0) { sbSql.Append(')'); } else { foreach (var column in Columns) { if (first) { first = false; } else { sbSql.Append(",\n"); } sbSql.Append("\t"); sbSql.Append(column.GetFullDefinition(false)); } sbSql.Append("\n)"); } if (Inherits != null && Inherits.Count != 0) { sbSql.Append("\nINHERITS ("); first = true; foreach (var tableName in Inherits) { if (first) { first = false; } else { sbSql.Append(", "); } sbSql.Append(tableName); } sbSql.Append(")"); } if (!string.IsNullOrEmpty(With)) { sbSql.Append("\n"); if ("OIDS=false".EqualsIgnoreCase(With)) { sbSql.Append("WITHOUT OIDS"); } else { sbSql.Append("WITH "); if ("OIDS".EqualsIgnoreCase(With) || "OIDS=true".EqualsIgnoreCase(With)) { sbSql.Append("OIDS"); } else { sbSql.Append(With); } } } if (!string.IsNullOrEmpty(Tablespace)) { sbSql.Append("\nTABLESPACE "); sbSql.Append(Tablespace); } sbSql.Append(';'); foreach (var column in GetColumnsWithStatistics()) { sbSql.Append("\nALTER TABLE ONLY "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" ALTER COLUMN "); sbSql.Append(PgDiffUtils.GetQuotedName(column.Name)); sbSql.Append(" SET STATISTICS "); sbSql.Append(column.Statistics); sbSql.Append(';'); } if (!string.IsNullOrEmpty(Comment)) { sbSql.Append("\n\nCOMMENT ON TABLE "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" IS "); sbSql.Append(Comment); sbSql.Append(';'); } foreach (var column in Columns) { if (!string.IsNullOrEmpty(column.Comment)) { sbSql.Append("\n\nCOMMENT ON COLUMN "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append('.'); sbSql.Append(PgDiffUtils.GetQuotedName(column.Name)); sbSql.Append(" IS "); sbSql.Append(column.Comment); sbSql.Append(';'); } } return(sbSql.ToString()); }
public string GetDropSql() => $"DROP TABLE {PgDiffUtils.GetQuotedName(Name)};";
public string GetCreationSql() { var sbSql = new StringBuilder(100); sbSql.Append("CREATE TRIGGER "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append("\n\t"); sbSql.Append(Before ? "BEFORE" : "AFTER"); var firstEvent = true; if (OnInsert) { sbSql.Append(" INSERT"); firstEvent = false; } if (OnUpdate) { if (firstEvent) { firstEvent = false; } else { sbSql.Append(" OR"); } sbSql.Append(" UPDATE"); if (UpdateColumns.Count > 0) { sbSql.Append(" OF"); var first = true; foreach (var columnName in UpdateColumns) { if (first) { first = false; } else { sbSql.Append(','); } sbSql.Append(' '); sbSql.Append(columnName); } } } if (OnDelete) { if (!firstEvent) { sbSql.Append(" OR"); } sbSql.Append(" DELETE"); } if (OnTruncate) { if (!firstEvent) { sbSql.Append(" OR"); } sbSql.Append(" TRUNCATE"); } sbSql.Append(" ON "); sbSql.Append(PgDiffUtils.GetQuotedName(TableName)); sbSql.Append("\n\tFOR EACH "); sbSql.Append(ForEachRow ? "ROW" : "STATEMENT"); if (!string.IsNullOrEmpty(When)) { sbSql.Append("\n\tWHEN ("); sbSql.Append(When); sbSql.Append(')'); } sbSql.Append("\n\tEXECUTE PROCEDURE "); sbSql.Append(Function); sbSql.Append(';'); if (!string.IsNullOrEmpty(Comment)) { sbSql.Append("\n\nCOMMENT ON TRIGGER "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" ON "); sbSql.Append(PgDiffUtils.GetQuotedName(TableName)); sbSql.Append(" IS "); sbSql.Append(Comment); sbSql.Append(';'); } return(sbSql.ToString()); }
public string GetDropSql() { return($"DROP TRIGGER {PgDiffUtils.GetQuotedName(Name)} ON {PgDiffUtils.GetQuotedName(TableName)};"); }
public string GetCreationSql() { var sbSql = new StringBuilder(100); sbSql.Append("CREATE SEQUENCE "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); if (StartWith != null) { sbSql.Append("\n\tSTART WITH "); sbSql.Append(StartWith); } if (Increment != null) { sbSql.Append("\n\tINCREMENT BY "); sbSql.Append(Increment); } sbSql.Append("\n\t"); if (MaxValue == null) { sbSql.Append("NO MAXVALUE"); } else { sbSql.Append("MAXVALUE "); sbSql.Append(MaxValue); } sbSql.Append("\n\t"); if (MinValue == null) { sbSql.Append("NO MINVALUE"); } else { sbSql.Append("MINVALUE "); sbSql.Append(MinValue); } if (Cache != null) { sbSql.Append("\n\tCACHE "); sbSql.Append(Cache); } if (Cycle) { sbSql.Append("\n\tCYCLE"); } sbSql.Append(';'); if (!string.IsNullOrEmpty(Comment)) { sbSql.Append("\n\nCOMMENT ON SEQUENCE "); sbSql.Append(PgDiffUtils.GetQuotedName(Name)); sbSql.Append(" IS "); sbSql.Append(Comment); sbSql.Append(';'); } return(sbSql.ToString()); }
public string GetDropSql() { return("DROP INDEX " + PgDiffUtils.GetQuotedName(Name) + ";"); }