SQLite Adjuntar base de datos

Supongamos una situación en la que hay múltiples bases de datos disponibles al mismo tiempo y desea utilizar cualquiera de ellas. De SQLiteATTACH DATABASELa sentencia se usa para seleccionar una base de datos específica. Después de usar este comando, todas las sentencias SQLite se ejecutarán en la base de datos adjunta.

Sintaxis

La sintaxis básica de la sentencia ATTACH DATABASE de SQLite es la siguiente:

ATTACH DATABASE file_name AS database_name;

Si la base de datos aún no se ha creado, el comando anterior creará una base de datos; si la base de datos ya existe, vinculará el nombre del archivo de la base de datos con la base de datos lógica 'Alias-Name'.

La base de datos abierta y la base de datos adjuntada con ATTACH deben estar en la misma carpeta.

Ejemplo

Si desea adjuntar una base de datos existentetestDB.db, la sentencia ATTACH DATABASE se mostrará de la siguiente manera:

sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';

Use SQLite.databaseel comando para mostrar las bases de datos adjuntas.

sqlite> .database
seq  name             file
---  ---------------  ----------------------
0    main             /home/sqlite/testDB.db
2    test             /home/sqlite/testDB.db

Los nombres de base de datosmainytempestán reservados para la base de datos principal y para la base de datos que almacena tablas temporales y otros objetos de datos temporales. Estos dos nombres de base de datos se pueden usar en cada conexión de base de datos y no deben usarse para adjuntar; de lo contrario, se obtendrá un mensaje de advertencia, como se muestra a continuación:

sqlite>  ATTACH DATABASE 'testDB.db' as 'TEMP';
Error: database TEMP is already in use
sqlite>  ATTACH DATABASE 'testDB.db' as 'main';
Error: database main is already in use;
Otras extensiones