Ejemplo n.º 1
0
        /// <summary>
        /// Validates the schema of the current database
        /// </summary>
        public DatabaseSchemaResult ValidateSchema()
        {
            var result = new DatabaseSchemaResult();

            //get the db index defs
            result.DbIndexDefinitions = _sqlSyntaxProvider.GetDefinedIndexes(_database)
                                        .Select(x => new DbIndexDefinition()
            {
                TableName  = x.Item1,
                IndexName  = x.Item2,
                ColumnName = x.Item3,
                IsUnique   = x.Item4
            }).ToArray();

            foreach (var item in OrderedTables.OrderBy(x => x.Key))
            {
                var tableDefinition = DefinitionFactory.GetTableDefinition(_sqlSyntaxProvider, item.Value);
                result.TableDefinitions.Add(tableDefinition);
            }

            ValidateDbTables(result);

            ValidateDbColumns(result);

            ValidateDbIndexes(result);

            ValidateDbConstraints(result);

            return(result);
        }
Ejemplo n.º 2
0
 public static IEnumerable <DbIndexDefinition> GetDefinedIndexesDefinitions(this ISqlSyntaxProvider sql, Database db)
 {
     return(sql.GetDefinedIndexes(db)
            .Select(x => new DbIndexDefinition()
     {
         TableName = x.Item1,
         IndexName = x.Item2,
         ColumnName = x.Item3,
         IsUnique = x.Item4
     }).ToArray());
 }
Ejemplo n.º 3
0
 public static IEnumerable <DbIndexDefinition> GetDefinedIndexesDefinitions(this ISqlSyntaxProvider sql, IDatabase db)
 {
     return(sql.GetDefinedIndexes(db)
            .Select(x => new DbIndexDefinition(x)).ToArray());
 }
 GetDefinedIndexesDefinitions(this ISqlSyntaxProvider sql, IDatabase db) =>
 sql.GetDefinedIndexes(db)
 .Select(x => new DbIndexDefinition(x)).ToArray();