sqlite

sqlite abre diretamente um arquivo de banco, inspeciona esquema e linhas, altera dados, exporta tabelas, executa SQL nativo e cria dumps SQL.

Banco de dadosVersão 1.1.5Estável
lil-terminal

Visão geral

Use sqlite diretamente em arquivos de banco: abra o arquivo, inspecione tabelas e colunas, veja ou altere linhas, exporte dados, execute SQL nativo e crie backups SQL sem servidor separado.

Um banco de dados dentro de um arquivo

SQLite é um banco SQL relacional armazenado em um arquivo comum e incorporado ao processo que o abre. Não exige servidor separado nem login de rede, sendo excelente para aprendizado, ferramentas locais e muitas aplicações pequenas ou médias. Mesmo assim, transações, índices, constraints, permissões do arquivo e escritas concorrentes continuam importantes.

Sintaxe

lil-terminal
sqlite [options] · sqlite : <sql>

Referência

sqlite

mostrar o arquivo SQLite atual

sqlite -c <file> [-f] [-m [name]]

abrir um banco SQLite; -f cria o arquivo se ele não existir

-use <file>

abrir outro banco SQLite existente

-l

mostrar arquivos de banco anexados

-t

listar tabelas e views

-s <table>

mostrar colunas e tipos de dados

-n <table> [rows]

pré-visualizar linhas

-f <table> <text> [rows]

pesquisar texto nas colunas da tabela

-o <table> [-j|-csv] [file] [-f]

exportar linhas da tabela

-a <table> : <json>

inserir uma linha a partir de um objeto JSON

-w <table> <field> <value> : <json>

atualizar linhas correspondentes a partir de um objeto JSON

-d <table> <field> <value>

excluir linhas correspondentes

-m [name]

salvar o banco atual em .lil.key; usar por padrão o nome do arquivo

-M <name>

remover um banco salvo

-k [name]

listar bancos salvos ou inspecionar um

-K <name>

abrir um banco salvo

-e

fechar o arquivo de banco selecionado

sqlite : <sql>

executar SQL nativo

sqlite load <file.sql>

executar SQL de um arquivo

sqlite dump [file.sql] [-f]

criar dump de esquema e dados

Para que serve

sqlite trabalha diretamente com um arquivo de banco de dados, sem servidor separado. Exige PHP SQLite3 e permissão no arquivo.

Como usar

sqlite -c db/shop.sqlite abre um arquivo existente; -f permite criar outro. -t/-s/-n/-f exibem tabelas, colunas, linhas e buscas. -o exporta JSON/CSV; sqlite : executa SQL, e dump/load trabalham com scripts.

Limites e segurança

Sem -f, um arquivo ausente não é criado; links simbólicos são recusados. Faça cópia antes de alterar ou usar load. -m guarda opcionalmente o caminho em .lil.key, gerenciado com -k/-K/-M. Exportação limitada a 100.000 linhas.

Prévia interativa do sandbox

Execute os exemplos preparados diretamente na página. Os resultados são predefinidos e exibidos no navegador; nenhum comando do terminal é executado no servidor.

Abrir um arquivo SQLite e inspecionar dados

Instalar e gerenciar

Instale a versão compatível atual. Escolha Base para o conjunto completo de recursos ou Minimum para o pacote reduzido; use upgrade para atualizar um módulo já instalado.

Base e Minimum são dois pacotes da mesma versão atual do módulo.

Pacote Base

Instala o pacote completo com referência local e todos os modos publicados.

install sqlite
Pacote Minimum

Instalar o pacote reduzido. A referência local é omitida; help <cmd> -i abre a referência atual do servidor.

install sqlite -m
Versão pública exata

Instalar exatamente esta versão publicada.

install sqlite -v 1.1.5
Verificar ou atualizar

upgrade verifica compatibilidade e substitui o bloco somente quando necessário.

upgrade sqlite
Remover módulo

Remove o bloco da extensão sem afetar o núcleo ou outros módulos.

install sqlite -u

Exemplos

Os exemplos podem ser copiados, mas o site não os executa. Revise caminhos, permissões e opções destrutivas.

Abrir um arquivo SQLite e inspecionar dados
sqlite -c db/shop.sqlite
Status  connected
File    sandbox/db/shop.sqlite
SQLite  (version depends on the host)
Mostrar o arquivo SQLite atual
sqlite
Status  connected
File    sandbox/db/shop.sqlite
SQLite  (version depends on the host)
Abrir um banco SQLite; -f cria o arquivo se ele não existir
sqlite -c db/new-shop.sqlite -f
Status  connected
File    sandbox/db/new-shop.sqlite
SQLite  (version depends on the host)
Abrir um banco SQLite; -f cria o arquivo se ele não existir
sqlite -c db/shop.sqlite -m shop-demo
Status  connected
File    sandbox/db/shop.sqlite
SQLite  (version depends on the host)
Saved   shop-demo
Abrir outro banco SQLite existente
sqlite -use db/shop.sqlite
Status  connected
File    sandbox/db/shop.sqlite
Mostrar arquivos de banco anexados
sqlite -l
seq	name	file
0	main	sandbox/db/shop.sqlite
Listar tabelas e views
sqlite -t
name	type
orders	table
products	table
Mostrar colunas e tipos de dados
sqlite -s products
cid	name	type	notnull	dflt_value	pk
0	id	INTEGER	0	NULL	1
1	sku	TEXT	1	NULL	0
2	name	TEXT	1	NULL	0
3	category	TEXT	1	NULL	0
4	price	REAL	1	NULL	0
5	active	INTEGER	1	1	0
Pré-visualizar linhas
sqlite -n products 3
id	sku	name	category	price	active
1	SHOE-1	City shoe	shoes	79.9	1
2	SHOE-2	Trail shoe	shoes	109.0	1
3	BAG-1	Canvas bag	bags	44.5	1
Pesquisar texto nas colunas da tabela
sqlite -f products "shoe" 3
id	sku	name	category	price	active
1	SHOE-1	City shoe	shoes	79.9	1
2	SHOE-2	Trail shoe	shoes	109.0	1
Exportar linhas da tabela
sqlite -o products -j
[
  {
    "id": 1,
    "sku": "SHOE-1",
    "name": "City shoe",
    "category": "shoes",
    "price": 79.9,
    "active": 1
  },
  {
    "id": 2,
    "sku": "SHOE-2",
    "name": "Trail shoe",
    "category": "shoes",
    "price": 109.0,
    "active": 1
  },
  {
    "id": 3,
    "sku": "BAG-1",
    "name": "Canvas bag",
    "category": "bags",
    "price": 44.5,
    "active": 1
  },
  {
    "id": 4,
    "sku": "HAT-1",
    "name": "Summer hat",
    "category": "accessories",
    "price": 25.0,
    "active": 0
  }
]
Exportar linhas da tabela
sqlite -o products -csv tmp/products.csv
Saved  sandbox/tmp/products.csv
Tratar um arquivo de banco ausente
sqlite -o products -csv tmp/products.csv -f
Saved  sandbox/tmp/products.csv
Inserir uma linha a partir de um objeto JSON
sqlite -a products : {"sku":"NEW-1","name":"Sample","category":"test","price":5,"active":1}
Inserted  1
ID        5
Atualizar linhas correspondentes a partir de um objeto JSON
sqlite -w products sku HAT-1 : {"price":24}
Updated  1
Excluir linhas correspondentes
sqlite -d products sku HAT-1
Deleted  1
Executar SQL nativo
sqlite : SELECT category, COUNT(*) AS total FROM products GROUP BY category
category	total
accessories	1
bags	1
shoes	2
Time  (varies) ms
Criar dump de esquema e dados
sqlite dump tmp/shop-backup.sql
Saved  sandbox/tmp/shop-backup.sql
Executar SQL de um arquivo
sqlite load db/sqlite.sql
SQLite error: table products already exists
Salvar o banco atual em .lil.key; usar por padrão o nome do arquivo
sqlite -m shop-demo
Saved  shop-demo
Listar bancos salvos ou inspecionar um
sqlite -k
No saved connections
Abrir um banco salvo
sqlite -K missing
Saved connection not found: missing
Remover um banco salvo
sqlite -M missing
Saved connection not found: missing
Fechar o arquivo de banco selecionado
sqlite -e
+
Abrir um banco SQLite; -f cria o arquivo se ele não existir
sqlite -c db/missing.sqlite
Database file not found
Abrir outro banco SQLite existente
sqlite -c db/shop.sqlite -use db/missing.sqlite
Database file not found
Mostrar colunas e tipos de dados
sqlite -s missing_table
Table not found: missing_table

Arquivo usado neste exemplo: sandbox/db/sqlite.sql

O exemplo usa um arquivo ou diretório do espaço protegido de documentação /sandbox/.

CREATE TABLE products (
  id INTEGER PRIMARY KEY,
  sku TEXT UNIQUE NOT NULL,
  name TEXT NOT NULL,
  category TEXT NOT NULL,
  price REAL NOT NULL,
  active INTEGER NOT NULL DEFAULT 1
);
INSERT INTO products (sku,name,category,price,active) VALUES
('SHOE-1','City shoe','shoes',79.90,1),
('SHOE-2','Trail shoe','shoes',109.00,1),
('BAG-1','Canvas bag','bags',44.50,1);

Documentação relacionada

Versão pública atual

v1.1.52026-11-01

Refinamento de produção

Versão estável atual de sqlite. sqlite abre diretamente um arquivo de banco, inspeciona esquema e linhas, altera dados, exporta tabelas, executa SQL nativo e cria dumps SQL.