SQLite Desadjuntar base de datos
de SQLiteDETACH DATABASELa sentencia se utiliza para separar y liberar la base de datos nombrada de una conexión de base de datos, que fue adjuntada anteriormente con la sentencia ATTACH. Si el mismo archivo de base de datos ya ha sido adjuntado con múltiples alias, el comando DETACH solo desconectará la conexión con el nombre dado, mientras que el resto seguirá siendo válido. No puede desadjuntarmainotempla base de datos.
Si la base de datos está en memoria o es una base de datos temporal, dicha base de datos será destruida y su contenido se perderá.
Sintaxis
La sintaxis básica de la sentencia DETACH DATABASE 'Alias-Name' de SQLite es la siguiente:
DETACH DATABASE 'Alias-Name';
Aquí, 'Alias-Name' es el mismo alias que utilizó anteriormente al adjuntar la base de datos con la sentencia ATTACH.
Ejemplo
Supongamos que en los capítulos anteriores ha creado una base de datos y le ha adjuntado 'test' y 'currentDB'. Usando el comando .database, podemos ver:
sqlite>.databases seq name file --- --------------- ---------------------- 0 main /home/sqlite/testDB.db 2 test /home/sqlite/testDB.db 3 currentDB /home/sqlite/testDB.db
Ahora, intentemos desadjuntar 'currentDB' de testDB.db, como se muestra a continuación:
sqlite> DETACH DATABASE 'currentDB';
Ahora, si comprueba las bases de datos adjuntadas actualmente, verá que testDB.db todavía permanece conectada con 'test' y 'main'.
sqlite>.databases seq name file --- --------------- ---------------------- 0 main /home/sqlite/testDB.db 2 test /home/sqlite/testDB.dbOtras extensiones