def load_statistics(self, dbmanager, db_alias): """load statistics""" return load_statistics(dbmanager, db_alias, self._schema)
def main(): usage = "usage: %prog -m mapfile \n" usage += " -s databaselink -a alias_mapfile\n" parser = OptionParser(usage=usage, version="%prog 1.0") parser.add_option("-m", "--mapfile", action="store", type="string", dest="mapfile", help="input registration yaml map file") parser.add_option("-s", "--source", action="store", type="string", dest="source", help="input validate database source link") parser.add_option("-a", "--alias_mapfile", action="store", type="string", dest="alias_mapfile", help="input mapfile based on aliased table") mapper = Mapper() mapfile = None dbmanager = None source = None originschema = None simschema = None (options, args) = parser.parse_args() if options.mapfile: mapfile = options.mapfile if options.source: source = options.source if mapfile == None or source == None: print "mapfile and source is needed" return mapper.load_mapfile(mapfile) dbmanager = DBManager() dbmanager.connect(source) dbalias = dbmanager.get_alias(source) tables = dbmanager.load_tables(dbalias) columns = mapper.list_column() entities = mapper.list_entity() keys = mapper.list_key() edict = {} edict = gendict(mapper) #gen single gen_single(edict) samples = get_sample(mapper, dbmanager, dbalias) # if dbmanager.db_type[dbalias] == 'mysql':# for mysql case sensitive # mapper.set_sens(True) originschema = OriginSchema(dbmanager.db_tables[dbalias]) originschema.check_connective() originschema.recognize_type(mapper) originschema.handle_alias() # print originschema.alias_table samples = get_sample(mapper, dbmanager, dbalias, originschema.alias_table) # print samples originschema.gen_attr_links(mapper) load_statistics(dbmanager, dbalias, originschema) if options.alias_mapfile: mapper.load_mapfile(options.alias_mapfile) edict = gendict(mapper) single = gen_single(edict) writedown(single, 'single.txt') singlec = gen_single_constraints(edict, single, mapper, samples) writedown(singlec, 'singlec.txt') double = gen_double(edict) # p.pprint (double) doublec = gen_double_constraints(edict, double, mapper, samples) writedown(doublec, 'doublec.txt') multiple = gen_multiple(edict, 3) writedown(multiple, 'multiple.txt') multiple = gen_multiple(edict, 4) writedown(multiple, 'multiple4.txt')