//Добавление в таблицу поля с указанием типа данных public static void SetColumn(this DaoDb db, string tableName, string columnName, DataType dtype) { switch (dtype) { case DataType.String: db.SetColumnString(tableName, columnName); break; case DataType.Real: db.SetColumnDouble(tableName, columnName); break; case DataType.Integer: db.SetColumnLong(tableName, columnName); break; case DataType.Boolean: db.SetColumnBool(tableName, columnName); break; case DataType.Time: db.SetColumnDateTime(tableName, columnName); break; } }
private void Update_1_0_8() { //PrevParams Добавлена таблица PrevParams //Добавлена связь с таблицей CalcParamsArchive: Включить каскадное удаление, каскдное обновление //CalcParamsArchive.Id=PrevParams.ArchiveParamId //SysTabl В параметр ArchiveOptions добавлены подпараметры //IsPrevAbs, IsLastBase, IsLastHour, IsLastDay, IsLastMoments, //IsManyBase, IsManyHour, IsManyDay, IsManyMoments _db.AddTable("PrevParams", "[" + _templatePath + "].PrevParams"); _db.Dispose(); _db.SetColumnIndex("PrevParams", "FullCode", IndexModes.UniqueIndex); //db.ExecuteAdo("ALTER TABLE PrevParams ADD CONSTRAINT CalcParamsArchivePrevParams FOREIGN KEY (ArchiveParamId) REFERENCES CalcParamsArchive(Id) ON DELETE CASCADE ON UPDATE CASCADE"); _db.AddForeignLink("PrevParams", "ArchiveParamId", "CalcParamsArchive", "Id"); //отдельно настраиваем отображение в виде чекбоксов _db.SetColumnBool("PrevParams", "PrevAbs"); _db.SetColumnBool("PrevParams", "LastBase"); _db.SetColumnBool("PrevParams", "LastHour"); _db.SetColumnBool("PrevParams", "LastDay"); _db.SetColumnBool("PrevParams", "LastMoments"); _db.SetColumnBool("PrevParams", "ManyBase"); _db.SetColumnBool("PrevParams", "ManyHour"); _db.SetColumnBool("PrevParams", "ManyDay"); _db.SetColumnBool("PrevParams", "ManyMoments"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsPrevAbs"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsLastBase"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsLastHour"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsLastDay"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsLastMoments"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsManyBase"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsManyHour"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsManyDay"); _db.AddSysSubParam(_templatePath, "ArchiveOptions", "IsManyMoments"); }