English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Base de données attachée SQLite (ATTACH DATABASE)

Considérez une situation où vous avez plusieurs bases de données disponibles et que vous souhaitez utiliser l'une d'elles à la fois. SQLite ATTACH DATABASELa commande est utilisée pour sélectionner une base de données spécifique, après l'exécution de cette commande, toutes les instructions SQLite seront exécutées sous la base de données attachée.

Syntaxe

Voici la syntaxe de base de la commande ATTACH DATABASE SQLite.

ATTACH DATABASE 'DatabaseName' As 'Alias-Nom';

Si la base de données n'a pas été créée, la commande ci-dessus créera également une base de données, sinon elle n'attachera que le nom du fichier de base de données à la base de données logique "alias".testDB.dbSi vous souhaitez attaché une base de données existante, la commande ATTACH DATABASE sera comme suit-

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

Utilisation de SQLite.databaseLa commande affiche les bases de données attachées.

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

Les noms de bases de données "main" et "temp" sont réservés pour la base de données principale et pour conserver les tables temporaires et d'autres objets de données temporaires. Ces noms de bases de données existent pour chaque connexion de base de données et ne doivent pas être utilisés pour les annexes, sinon vous recevrez le message d'avertissement suivant.

sqlite> ATTACH DATABASE 'testDB.db' as 'TEMP';
Erreur : la base de données TEMP est déjà utilisée
sqlite> ATTACH DATABASE 'testDB.db' as 'main';
Erreur : la base de données TEMP est déjà utilisée