def Cargar(self, table): try: if self.tabla_actual.nombre == table: return self.tabla_actual elif table in self.list_table: self.tabla_actual = serealizar.rollback(table, self.main_path) return self.tabla_actual else: return False except: if table in self.list_table: self.tabla_actual = serealizar.rollback(table, self.main_path) return self.tabla_actual else: return False
def extractRangeTable(self, table, columnNumber, lower, upper): if table in self.list_table: try: temp = serealizar.rollback(table, self.main_path) return temp.extractRangeTable(columnNumber, lower, upper) except: return 1 else: return None
def extractTable(self, table): if table in self.list_table: try: temp = serealizar.rollback(table, self.main_path) return temp.extractTable() except: return 1 else: return None
def extractRangeTable(self, table, columnNumber, lower, upper): salida = self.Buscar(table) if salida[0]: try: temp = serealizar.rollback(table, self.main_path) return temp.extractRangeTable(columnNumber, lower, upper) except: return 1 else: return None
def extractTable(self, table): salida = self.Buscar(table) if salida[0]: try: temp = serealizar.rollback(table, self.main_path) return temp.extractTable() except: return None else: return None
def __init__(): global lista_general lista_general = [] # Lista de [Nombre, modo, encoding] if not os.path.isfile(_main_path + "\\" + "cache.bin"): serealizar.commit(lista_general, "cache", _main_path) else: lista_general = serealizar.rollback("cache", _main_path)
def loadCSV(file: str, database: str, table: str) -> list: """Loads a csv file and inserts its content into a table in a database Parameters:\n file (str): csv file path file (str): csv file path database (str): name of the database table (str): name of the table Returns:\n list: return values of each insert empty list: non-existent database, non-existent table, an error occured, csv file is empty """ try: archivo = open(file, "r") temp = _storage.Buscar(database) if temp: try: b = temp.Buscar(table) nombre = temp.list_table[b[1]] if b[0]: tabla = serealizar.rollback(nombre, _main_path + "\\" + database) registros = csv.reader(archivo, delimiter=",") valores = [] for registro in registros: valores.append(tabla.insertar(registro)) else: serealizar.commit(tabla, table, _main_path + "\\" + database) return valores else: return [] except: return [] else: return [] except: return []
def alterTable(self, tableOld, tableNew): salida = self.Buscar(tableOld) if salida[0]: try: temp = serealizar.rollback(tableOld, self.main_path) if not tableNew in self.list_table: if re.search(table_name_pattern, tableOld) and re.search( table_name_pattern, tableNew): os.remove(self.main_path + "\\" + tableOld + ".bin") self.list_table[salida[1]] = tableNew temp.alterTable(tableNew) serealizar.commit(temp, tableNew, self.main_path) return 0 else: return 1 else: return 4 except: return 1 else: return 3