def _print_import_result(status, file): print('table: ' + SqlHelper.get_tablename(file)) if status[0] > 0: print('- created') if status[1] > 0: print('- filled') if status[2] > 0: print('- primary key detected') print('---')
def _create_table(self, file, indices): table_name = SqlHelper.get_tablename(file) result_create = 0 result_data = 0 result_key = 0 # create table in database name_list, type_list = SqlImporter._extract_name_and_types(file) if len(name_list) > 0: create_query = SqlHelper.sql_create_table(table_name, name_list, type_list) create_success = SqlHelper.execute_statement( self.connection, create_query) self.connection.commit() if create_success: result_create = 1 # import data into table result_data = self._import_data_to_table(file, table_name, name_list, type_list) self.connection.commit() # attempt to set primary key in first integer-type column primary_key = -1 for i in range(len(type_list)): t = type_list[i] if t == DbType.INTEGER: success = self._set_primarykey(table_name, i, name_list, type_list) self.connection.commit() if success: result_key = 1 primary_key = i break # set indices on _id named columns if specified if indices: for i in range(len(type_list)): t = type_list[i] if i != primary_key and t == DbType.INTEGER and ( name_list[i] == 'id' or '_id_' in name_list[i] or name_list[i].endswith('_id')): self._set_index(table_name, i, name_list, type_list) return result_create, result_data, result_key