sqlite

sqlite apre direttamente un file database, ispeziona schema e righe, modifica dati, esporta tabelle, esegue SQL nativo e crea dump SQL.

DatabaseVersione 1.1.4Stabile
lil-terminal

Panoramica

Usa sqlite direttamente sui file di database: apri il file, ispeziona tabelle e colonne, consulta o modifica righe, esporta dati, esegui SQL nativo e crea backup SQL senza server separato.

Un database dentro un file

SQLite è un database SQL relazionale contenuto in un normale file e incorporato nel processo che lo apre. Non richiede un server separato né un login di rete, quindi è ottimo per imparare, per strumenti locali e per molte applicazioni piccole o medie. Restano comunque importanti transazioni, indici, vincoli, permessi del file e scritture concorrenti.

Sintassi

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

Riferimento

sqlite

mostrare il file SQLite corrente

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

aprire un database SQLite; -f crea il file se manca

-use <file>

aprire un altro database SQLite esistente

-l

mostrare i file di database collegati

-t

elencare tabelle e viste

-s <table>

mostrare colonne e tipi di dati

-n <table> [rows]

mostrare un’anteprima delle righe

-f <table> <text> [rows]

cercare testo nelle colonne della tabella

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

esportare le righe della tabella

-a <table> : <json>

inserire una riga da un oggetto JSON

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

aggiornare le righe corrispondenti da un oggetto JSON

-d <table> <field> <value>

eliminare le righe corrispondenti

-m [name]

salvare il database corrente in .lil.key; usare per default il nome del file

-M <name>

rimuovere un database salvato

-k [name]

elencare i database salvati o esaminarne uno

-K <name>

aprire un database salvato

-e

chiudere il file di database selezionato

sqlite : <sql>

eseguire SQL nativo

sqlite load <file.sql>

eseguire SQL da un file

sqlite dump [file.sql] [-f]

creare un dump di schema e dati

Modello operativo

Le forme comuni sono riportate nella guida locale. Le scorciatoie coprono ispezione e modifiche mirate; la sintassi nativa resta disponibile per le operazioni avanzate.

Backup e ripristino

dump/load seguono il formato del driver. Per backup completi di tutte le funzioni del motore usare gli strumenti nativi del server.

Sicurezza

Le password vengono inserite in un campo nascosto e non finiscono nella cronologia. Quando possibile usare account con privilegi limitati.

L’export di una tabella oltre 100000 righe viene rifiutato invece di scrivere un file parziale; il dump SQL resta il percorso completo per schema e dati.

Connessioni salvate

Senza -m, i dati di connessione restano limitati alla sessione PHP corrente. -m [name] salva esplicitamente il profilo nel file protetto .lil.key (0600), -K <name> si riconnette usando quel profilo, -k elenca o esamina i profili senza mostrare una password salvata e -M <name> ne rimuove uno. kill elimina .lil.key insieme al resto dello stato del core. Considera il file sensibile perché un profilo salvato volontariamente può contenere credenziali del database.

Anteprima interattiva del sandbox

Esegui gli esempi preparati direttamente nella pagina. I risultati sono predefiniti e mostrati nel browser; sul server non viene eseguito alcun comando del terminale.

Aprire un file SQLite e ispezionare i dati

Installa e gestisci

Installa la versione compatibile corrente. Scegli Base per tutte le funzioni o Minimum per il pacchetto ridotto; usa upgrade per aggiornare un modulo già installato.

Base e Minimum sono due pacchetti della stessa release corrente del modulo.

Pacchetto Base

Installa il pacchetto completo con riferimento locale e tutte le modalità pubblicate.

install sqlite
Pacchetto Minimum

Installa il pacchetto ridotto. Il riferimento locale è omesso; help <cmd> -i apre il riferimento server corrente.

install sqlite -m
Versione pubblica esatta

Installa esattamente questa versione pubblicata.

install sqlite -v 1.1.4
Controlla o aggiorna

upgrade controlla la compatibilità e sostituisce il blocco solo quando serve.

upgrade sqlite
Rimuovi modulo

Rimuove il blocco estensione senza toccare core e altri moduli.

install sqlite -u

Esempi

Gli esempi sono copiabili ma il sito non li esegue. Controlla percorsi, permessi e opzioni distruttive.

Aprire un file SQLite e ispezionare i dati
cd \sandbox\db | sqlite -c shop.sqlite | sqlite -t | sqlite -n products 5
mysql.sql
postgresql.sql
redis.txt
shop.sqlite
sqlite.sql

Status  connected
File    sandbox/db/shop.sqlite
SQLite  3.x

products
orders

id	sku	name	category	price	active
1	SHOE-1	City shoe	shoes	79.9	1
2	SHOE-2	Trail shoe	shoes	109	1
3	BAG-1	Canvas bag	bags	44.5	1
Sqlite · shop.sqlite
shop.sqlite
Status  connected
File    sandbox/db/shop.sqlite
SQLite  3.x
Sqlite · products
sqlite -s products
Column    Type     Not null  Key
id        INTEGER  no        PRIMARY
sku       TEXT     yes       UNIQUE
name      TEXT     yes
category  TEXT     yes
price     REAL     yes
active    INTEGER  yes
Sqlite · products
sqlite -f products "shoe" 20
id	sku	name	category	price
1	SHOE-1	City shoe	shoes	79.9
2	SHOE-2	Trail shoe	shoes	109
Sqlite · products
sqlite -o products -csv products.csv
Saved  products.csv
Sqlite · products
sqlite -a products : {"sku":"BAG-1","name":"Travel bag","price":49.90}
Inserted  1
ID        5
Sqlite · products
sqlite -w products sku BAG-1 : {"price":44.90}
Updated  1
Sqlite · products
sqlite -d products sku BAG-1
Deleted  1
Sqlite · select
sqlite : SELECT category,COUNT(*) FROM products GROUP BY category
category	COUNT(*)
accessories	1
bags	1
shoes	2
Sqlite · dump
sqlite dump shop-backup.sql
Saved  shop-backup.sql
Sqlite · load
sqlite load \sandbox\db\sqlite.sql
+
Sqlite · -e
sqlite -e
+
Gestire un file database mancante
sqlite -c missing.sqlite
File del database non trovato

File usato in questo esempio: sandbox/db/sqlite.sql

L’esempio usa un file o una directory dell’area di documentazione protetta /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);

Documentazione correlata

Versione pubblica attuale

v1.1.42026-08-08

Database SQLite salvati

Aggiunge percorsi SQLite con nome in .lil.key con salvataggio, ispezione, apertura e rimozione espliciti.