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

SQLite Anexar banco de dados (ATTACH DATABASE)

Considere uma situação em que você tem vários bancos de dados disponíveis e deseja usar um deles de uma vez. SQLite ATTACH DATABASEA instrução é usada para escolher um banco de dados específico, após a execução deste comando, todas as instruções SQLite serão executadas no banco de dados anexado.

Sintaxe

A seguir está a sintaxe básica da instrução ATTACH DATABASE do SQLite.

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

Se o banco de dados ainda não foi criado, o comando acima também criará um banco de dados, caso contrário, ele apenas anexará o nome do arquivo do banco de dados ao banco de dados lógico 'apelido'.

Exemplo online

Se você deseja anexar um banco de dados existentetestDB.dbSe o comando ATTACH DATABASE não for usado, a seguinte sintaxe será usada-

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

Usando SQLite.databaseO comando exibe os bancos de dados anexados.

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

Os nomes de banco de dados main e temp são reservados para o banco de dados principal e para o banco de dados de reservas temporárias e outros objetos de dados temporários. Esses nomes de banco de dados existem para cada conexão de banco de dados e não devem ser aplicados aos anexos, senão você receberá a seguinte mensagem de aviso.

sqlite> ATTACH DATABASE 'testDB.db' as 'TEMP';
Error: database TEMP já está em uso
sqlite> ATTACH DATABASE 'testDB.db' as 'main';
Error: database TEMP já está em uso