SQLite - Comandos

Este capítulo o levará através de comandos simples e úteis usados ​​por programadores SQLite. Esses comandos são chamados de comandos de ponto SQLite e a exceção a esses comandos é que eles não devem terminar com um ponto e vírgula (;).

Vamos começar digitando um simples sqlite3 comando no prompt de comando que fornecerá o prompt de comando SQLite onde você emitirá vários comandos SQLite.

$sqlite3
SQLite version 3.3.6
Enter ".help" for instructions
sqlite>

Para obter uma lista dos comandos de ponto disponíveis, você pode inserir ".help" a qualquer momento. Por exemplo -

sqlite>.help

O comando acima exibirá uma lista de vários comandos de pontos SQLite importantes, que estão listados na tabela a seguir.

Sr. Não. Comando e Descrição
1

.backup ?DB? FILE

Backup do banco de dados (padrão "principal") para ARQUIVO

2

.bail ON|OFF

Pare depois de encontrar um erro. OFF padrão

3

.databases

Listar nomes e arquivos de bancos de dados anexados

4

.dump ?TABLE?

Despeje o banco de dados em um formato de texto SQL. Se TABLE for especificado, apenas as tabelas de dump que correspondem ao padrão LIKE TABLE

5

.echo ON|OFF

Ligue ou desligue o eco de comando

6

.exit

Sair do prompt SQLite

7

.explain ON|OFF

Ative ou desative o modo de saída adequado para EXPLAIN. Sem args, ele ativa EXPLAIN

8

.header(s) ON|OFF

Ativar ou desativar a exibição de cabeçalhos

9

.help

Mostrar esta mensagem

10

.import FILE TABLE

Importar dados de FILE para TABLE

11

.indices ?TABLE?

Mostra os nomes de todos os índices. Se TABLE for especificado, mostra apenas os índices para as tabelas que correspondem ao padrão LIKE TABLE

12

.load FILE ?ENTRY?

Carregar uma biblioteca de extensão

13

.log FILE|off

Ligue ou desligue o log. ARQUIVO pode ser stderr / stdout

14

.mode MODE

Defina o modo de saída onde MODE é um de -

  • csv - Valores separados por vírgula

  • column - Colunas alinhadas à esquerda.

  • html - código HTML <table>

  • insert - Instruções de inserção SQL para TABLE

  • line - Um valor por linha

  • list - Valores delimitados por string .separator

  • tabs - Valores separados por tabulação

  • tcl - Elementos da lista TCL

15

.nullvalue STRING

Imprimir STRING no lugar de valores NULL

16

.output FILENAME

Enviar saída para FILENAME

17

.output stdout

Envie a saída para a tela

18

.print STRING...

Imprimir literal STRING

19

.prompt MAIN CONTINUE

Substitua os prompts padrão

20

.quit

Sair do prompt SQLite

21

.read FILENAME

Execute SQL em FILENAME

22

.schema ?TABLE?

Mostre as instruções CREATE. Se TABLE for especificado, mostra apenas as tabelas que correspondem ao padrão LIKE TABLE

23

.separator STRING

Separador de mudança usado pelo modo de saída e .import

24

.show

Mostra os valores atuais para várias configurações

25

.stats ON|OFF

Ativar ou desativar estatísticas

26

.tables ?PATTERN?

Lista os nomes das tabelas que correspondem a um padrão LIKE

27

.timeout MS

Tente abrir tabelas bloqueadas por MS milissegundos

28

.width NUM NUM

Defina as larguras das colunas para o modo "coluna"

29

.timer ON|OFF

Ligue ou desligue a medição do temporizador da CPU

Vamos tentar .show comando para ver a configuração padrão para seu prompt de comando SQLite.

sqlite>.show
     echo: off
  explain: off
  headers: off
     mode: column
nullvalue: ""
   output: stdout
separator: "|"
    width:
sqlite>

Certifique-se de que não haja espaço entre o prompt sqlite> e o comando dot, caso contrário, não funcionará.

Saída de formatação

Você pode usar a seguinte sequência de comandos de ponto para formatar sua saída.

sqlite>.header on
sqlite>.mode column
sqlite>.timer on
sqlite>

A configuração acima produzirá a saída no formato a seguir.

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0
CPU Time: user 0.000000 sys 0.000000

A tabela sqlite_master

A tabela mestre contém as principais informações sobre as tabelas do banco de dados e é chamada sqlite_master. Você pode ver seu esquema da seguinte maneira -

sqlite>.schema sqlite_master

Isso produzirá o seguinte resultado.

CREATE TABLE sqlite_master (
   type text,
   name text,
   tbl_name text,
   rootpage integer,
   sql text
);