def alterDatabaseMode(database: str, mode: str): ModeDB, indexDB = exist_Alter(database) mode_list.pop(indexDB) createDatabase(database, mode, ModeDB.get_encondig()) if ModeDB: oldMode = ModeDB.get_mode() if oldMode.lower().strip() == "avl": tables = avl.showTables(database) for tabla in tables: listaDatos = get_Data(database, tabla, oldMode) numberColumns = len(listaDatos[0]) insertAlter(database, tabla, numberColumns, mode, listaDatos) avl.dropDatabase(database) elif oldMode.lower().strip() == "b": tables = b.showTables(database) for tabla in tables: listaDatos = get_Data(database, tabla, oldMode) numberColumns = len(listaDatos[0]) insertAlter(database, tabla, numberColumns, mode, listaDatos) b.dropDatabase(database) elif oldMode.lower().strip() == "bPlus".lower(): tables = bPlus.showTables(database) for tabla in tables: listaDatos = get_Data(database, tabla, oldMode) numberColumns = len(listaDatos[0]) insertAlter(database, tabla, numberColumns, mode, listaDatos) bPlus.dropDatabase(database) elif oldMode.lower().strip() == "dict": tables = diccionario.showTables(database) for tabla in tables: listaDatos = get_Data(database, tabla, oldMode) numberColumns = len(listaDatos[0]) insertAlter(database, tabla, numberColumns, mode, listaDatos) diccionario.dropDatabase(database) elif oldMode.lower().strip() == "isam": tables = isam.showTables(database) for tabla in tables: listaDatos = get_Data(database, tabla, oldMode) numberColumns = len(listaDatos[0]) insertAlter(database, tabla, numberColumns, mode, listaDatos) isam.dropDatabase(database) elif oldMode.lower().strip() == "hash": tables = hash.showTables(database) for tabla in tables: listaDatos = get_Data(database, tabla, oldMode) numberColumns = len(listaDatos[0]) insertAlter(database, tabla, numberColumns, mode, listaDatos) hash.dropDatabase(database) elif oldMode.lower().strip() == "json": tables = json.showTables(database) for tabla in tables: listaDatos = get_Data(database, tabla, oldMode) numberColumns = len(listaDatos[0]) insertAlter(database, tabla, numberColumns, mode, listaDatos) json.dropDatabase(database)
def dropDatabase(database: str) -> int: try: retorno = 1 bd = __buscarLlaveBaseDato(database) if bd is not None: modoDB = bd[0] if modoDB == "avl": retorno = avl.dropDatabase(database) elif modoDB == "b": retorno = b.dropDatabase(database) elif modoDB == "bplus": retorno = bPlus.dropDatabase(database) elif modoDB == "dict": retorno = dic.dropDatabase(database) elif modoDB == "isam": retorno = isam.dropDatabase(database) elif modoDB == "json": retorno = json.dropDatabase(database) elif modoDB == "hash": retorno = hash.dropDatabase(database) if retorno == 0: del generalDict[database] ser("data/info/datos.bin", generalDict) return retorno else: return 2 except Exception: return 1
def dropDatabase(database: str) -> int: if re.search(DB_NAME_PATTERN, database): dbs = databases.find_all(database) if dbs == []: return 2 for db in dbs: if db.mode == "avl": code = avlMode.dropDatabase(database) elif db.mode == "b": code = BMode.dropDatabase(database) elif db.mode == "bplus": code = BPlusMode.dropDatabase(database) elif db.mode == "dict": code = DictMode.dropDatabase(database) elif db.mode == "isam": code = ISAMMode.dropDatabase(database) elif db.mode == "json": code = jsonMode.dropDatabase(database) elif db.mode == "hash": code = HashMode.dropDatabase(database) if code == 0: databases.delete(db.name) for x in range(5): try: Serializable.commit(databases, "lista_bases_de_datos") return 0 except: continue return 1 else: return 1
def dropDatabase(database: str) -> int: """Deletes a database (including all of its content) Parameters:\n database (str): name of the database Returns:\n 0: successful operation 1: an error ocurred 2: non-existent database """ bd = _Buscar(database) if bd: mode = bd[1] val = -1 if mode == "avl": val = avl.dropDatabase(database) elif mode == "b": val = b.dropDatabase(database) elif mode == "bplus": val = bplus.dropDatabase(database) elif mode == "hash": val = hash.dropDatabase(database) elif mode == "isam": val = isam.dropDatabase(database) elif mode == "json": val = json.dropDatabase(database) elif mode == "dict": val = dict.dropDatabase(database) if val == 0: lista_general.remove(bd) serealizar.commit(lista_general, "cache", _main_path) return val else: return 2
def dropDatabase(database: str) -> int: """Deletes a database (including all of its content) Parameters:\n database (str): name of the database Returns:\n 0: successful operation 1: an error ocurred 2: non-existent database """ bd = _database(database) if bd: mode = bd["modo"] val = -1 if mode == "avl": val = avl.dropDatabase(database) elif mode == "b": val = b.dropDatabase(database) elif mode == "bplus": val = bplus.dropDatabase(database) elif mode == "hash": val = hash.dropDatabase(database) elif mode == "isam": val = isam.dropDatabase(database) elif mode == "json": val = json.dropDatabase(database) elif mode == "dict": val = dict.dropDatabase(database) if val == 0: _data.remove(bd) _Guardar() return val else: return 2
def dropDatabase(name_db): ModeDB, indexDB = exist_Alter(name_db) if ModeDB: mode = ModeDB.get_mode() if mode.lower().strip() == "avl": return avl.dropDatabase(name_db) elif mode.lower().strip() == "b": return b.dropDatabase(name_db) elif mode.lower().strip() == "bPlus".lower(): return bPlus.dropDatabase(name_db) elif mode.lower().strip() == "dict": return diccionario.dropDatabase(name_db) elif mode.lower().strip() == "hash": return hash.dropDatabase(name_db) elif mode.lower().strip() == "isam": return isam.dropDatabase(name_db) elif mode.lower().strip() == "json": return json.dropDatabase(name_db)
def dropDatabase(database): if searchInMode(database) != None: currentMode = searchInMode(database) if currentMode == 'avl': return avl.dropDatabase(database) elif currentMode == 'b': return b.dropDatabase(database) elif currentMode == 'bplus': return bplus.dropDatabase(database) elif currentMode == 'dict': return DM.dropDatabase(database) elif currentMode == 'isam': return isam.dropDatabase(database) elif currentMode == 'json': return j.dropDatabase(database) elif currentMode == 'hash': return Hash.dropDatabase(database) else: return 2
def dropDatabase(database): mode = None for i in range(7): mode = obtenerBase(database, i) if mode == []: continue else: if mode == 0: mode = "avl" elif mode == 1: mode = "b" elif mode == 2: mode = "bplus" elif mode == 3: mode = "dict" elif mode == 4: mode = "isam" elif mode == 5: mode = "json" elif mode == 6: mode = "hash" break if mode == None: return 2 if mode == "avl": # Grupo 16 val = avl_mode.dropDatabase(database) elif mode == "b": # Grupo 17 val = b_mode.dropDatabase(database) elif mode == "bplus": # Grupo 18 val = bplus_mode.dropDatabase(database) elif mode == "dict": # Auxiliar val = dict_mode.dropDatabase(database) elif mode == "isam": # Grupo 14 val = isam_mode.dropDatabase(database) elif mode == "json": # Ingeniero val = json_mode.dropDatabase(database) elif mode == "hash": # Grupo 15 val = hash_mode.dropDatabase(database) else: val = 3 if val == 0: global Bases global Tablas try: # Leemos el archivo binario de los registros de bases de datos fichero_lectura = open("BD_register", "rb") Bases = pickle.load(fichero_lectura) Bases.pop(database) # Actualizamos el archivo binario de los registros de bases de datos fichero_escritura = open("BD_register", "wb") pickle.dump(Bases, fichero_escritura) fichero_escritura.close() try: # Leemos el archivo binario de los registros de tablas fichero_lectura = open("TB_register", "rb") Tablas = pickle.load(fichero_lectura) try: Tablas.pop(database) except: """""" # Actualizamos el archivo binario de los registros de tablas fichero_escritura = open("TB_register", "wb") pickle.dump(Tablas, fichero_escritura) fichero_escritura.close() except: try: Tablas.pop(database) except: """""" # Actualizamos el archivo binario de los registros de tablas fichero_escritura = open("TB_register", "wb") pickle.dump(Tablas, fichero_escritura) fichero_escritura.close() except: Bases.pop(database) # Actualizamos el archivo binario de los registros de bases de datos fichero_escritura = open("BD_register", "wb") pickle.dump(Bases, fichero_escritura) fichero_escritura.close() try: # Leemos el archivo binario de los registros de tablas fichero_lectura = open("TB_register", "rb") Tablas = pickle.load(fichero_lectura) try: Tablas.pop(database) except: """""" # Actualizamos el archivo binario de los registros de tablas fichero_escritura = open("TB_register", "wb") pickle.dump(Tablas, fichero_escritura) fichero_escritura.close() except: try: Tablas.pop(database) except: """""" # Actualizamos el archivo binario de los registros de tablas fichero_escritura = open("TB_register", "wb") pickle.dump(Tablas, fichero_escritura) fichero_escritura.close() return val