예제 #1
0
        public static void DropObject(this IAlterProcessor proc, IAbstractObjectStructure obj)
        {
            var tbl = obj as ITableStructure;

            if (tbl != null)
            {
                proc.DropTable(tbl);
                return;
            }
            var col = obj as IColumnStructure;

            if (col != null)
            {
                proc.DropColumn(col);
                return;
            }
            var cnt = obj as IConstraint;

            if (cnt != null)
            {
                proc.DropConstraint(cnt);
                return;
            }
            var spe = obj as ISpecificObjectStructure;

            if (spe != null)
            {
                proc.DropSpecificObject(spe);
                return;
            }
            var sch = obj as ISchemaStructure;

            if (sch != null)
            {
                proc.DropSchema(sch);
                return;
            }
            var dom = obj as IDomainStructure;

            if (dom != null)
            {
                proc.DropDomain(dom);
                return;
            }
        }