public void ReadOneAllSetup(DAL db) { StringBuilder sb = new StringBuilder(); foreach (String tableName in CruiseDAL.Schema.Schema.TABLE_NAMES) { List<ColumnInfo> columnInfos = db.GetTableInfo(tableName); String[] columnNames = (from ci in columnInfos where ci.IsRequired select ci.Name).ToArray(); String[] values = (from ci in columnInfos where ci.IsRequired select (ci.DBType == "TEXT") ? "'TestStr'" : (ci.DBType == "INTEGER") ? "101010" : (ci.DBType == "REAL") ? "202.02" : "'Something'").ToArray(); if (columnNames.Length > 0) { sb.AppendFormat("INSERT INTO {0} ({1}) VALUES ({2}); ", tableName, string.Join(",", columnNames), string.Join(",", values)); } else { sb.AppendFormat("INSERT INTO {0} DEFAULT VALUES; ", tableName); } } db.Execute(sb.ToString()); }
public MergeTableCommandBuilder(DAL masterDB, String clientTableName) { this.ClientTableName = clientTableName; this.MergeTableName = "Merge" + this.ClientTableName; this.AllClientColumns = masterDB.GetTableInfo(clientTableName); this.ClientGUIDKeyField = (from ColumnInfo ci in this.AllClientColumns where ci.Name == this.ClientTableName + "_GUID" select ci).FirstOrDefault(); this.ClientPrimaryKey = (from ColumnInfo ci in this.AllClientColumns where ci.IsPK == true select ci).FirstOrDefault() ?? new ColumnInfo() { Name = "RowID" }; this.HasRowVersion = this.AllClientColumns.Find(x => x.Name == "RowVersion") != null; this.ClientUniqueFieldNames = masterDB.GetTableUniques(clientTableName).ToArray(); InitializeCommonColumns(this.HasGUIDKey, this.HasRowVersion); }
private static void UpdateToVersion2015_08_19(DAL db) { System.Collections.Generic.List<ColumnInfo> tavCols = db.GetTableInfo("TreeAuditValue"); bool hasErrorMessageCol = false; foreach (ColumnInfo col in tavCols) { if (col.Name == "ErrorMessage") { hasErrorMessageCol = true; break; } } try { db.BeginTransaction(); if (!hasErrorMessageCol) { db.AddField("TreeAuditValue", "ErrorMessage TEXT"); } SetDatabaseVersion(db, "2015.08.19"); db.CommitTransaction(); } catch (Exception e) { db.RollbackTransaction(); throw new SchemaUpdateException(db.DatabaseVersion, "2015.08.19", e); } }