Resumo : neste tutorial, você aprenderá como usar o comando dump SQLite para fazer backup e restaurar um banco de dados.
O projeto SQLite oferece a sqlite3
ferramenta que permite interagir com o banco de dados SQLite usando um programa de linha de comando.
Ao usar a sqlite3
ferramenta, você pode usar instruções SQL para consultar ou atualizar dados no banco de dados. Além disso, você pode usar comandos especiais, conhecidos como comandos de ponto, para executar várias operações úteis de banco de dados.
Um desses comandos de ponto é o .dump
comando que permite despejar todo o banco de dados ou tabelas em um arquivo de texto.
Despeje todo o banco de dados em um arquivo usando o comando dump SQLite
O comando a seguir abre uma nova conexão de banco de dados SQLite com o chinook.db
arquivo.
C:\sqlite>sqlite3 c:/sqlite/chinook.db
SQLite version 3.13.0 2016-05-18 10:57:30
Enter ".help" for usage hints.
sqlite>
Linguagem de código: JavaScript ( javascript )
Para despejar um banco de dados em um arquivo, você usa o .dump
comando. O .dump
comando converte toda a estrutura e dados de um banco de dados SQLite em um único arquivo de texto.
Por padrão, o .dump
comando exibe as instruções SQL na tela. Para emitir a saída para um arquivo, você usa o .output FILENAME
comando.
Os comandos a seguir especificam a saída do arquivo de despejo chinook.sql
e despejam o banco de dados chinook no chinook.sql
arquivo.
sqlite> .output c:/sqlite/chinook.sql
sqlite> .dump
sqlite> .exit
Linguagem de código: JavaScript ( javascript )
Despejar uma tabela específica usando o comando dump SQLite
Para despejar uma tabela específica, especifique o nome da tabela após o .dump
comando. Por exemplo, o comando a seguir salva a albums
tabela no albums.sql
arquivo.
sqlite> .output c:/sqlite/albums.sql
sqlite> .dump albums
sqlite> .quit
Linguagem de código: JavaScript ( javascript )
A imagem a seguir mostra o conteúdo do albums.sql
arquivo.
Estrutura de tabelas de despejo apenas usando o comando de esquema
Para despejar as estruturas da tabela em um banco de dados, você usa o .schema
comando.
Os comandos a seguir definem o arquivo de saída como chinook_structure.sql
arquivo e salvam as estruturas da tabela no chinook_structure.sql
arquivo:
sqlite> .output c:/sqlite/chinook_structure.sql
sqlite> .schema
sqlite> .quit
Linguagem de código: JavaScript ( javascript )
A imagem a seguir mostra o conteúdo do chinook_structure.sql
arquivo.
Despejar dados de uma ou mais tabelas em um arquivo
Para despejar os dados de uma tabela em um arquivo de texto, siga estas etapas:
Primeiro, defina o modo insert
usando o .mode
comando a seguir:
sqlite> .mode insert
Linguagem de código: CSS ( css )
De agora em diante, cada instrução SELECT emitirá o resultado como instruções INSERT em vez de dados de texto puro.
Segundo, defina a saída como um arquivo de texto em vez da saída padrão padrão. O comando a seguir define o arquivo de saída para o data.sql
arquivo.
sqlite> .output data.sql
Linguagem de código: CSS ( css )
Terceiro, emita as instruções SELECT para consultar dados de uma tabela que você deseja descarregar. O comando a seguir retorna dados da artists
tabela.
sqlite> select * from artists;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Verifique o conteúdo do data.sql
arquivo, se estiver tudo bem, você verá a seguinte saída:
Para despejar dados de outras tabelas, você precisa emitir SELECT
instruções para consultar dados dessas tabelas.
Neste tutorial, você aprendeu como despejar dados em um arquivo de texto usando o comando dump SQLite e outros comandos.