LINUX

Come installare e utilizzare SQLite di base su Linux

sqlite linux

In questo articolo vedremo come installare SQLite (database relazionale) con le sue operazioni di base. Se ti dico che SQLite è probabilmente utilizzato più di tutti gli altri motori di database messi insieme. Sì, hai sentito bene. È il database più diffuso al mondo, con milioni e miliardi di copie.

La ragione dietro questa popolarità è una caratteristiche uniche che sono insoliti e che lo rendono diverso da molti altri motori di database SQL come MySQL, PostgreSQL, Oracle, Microsoft SQL Server, ecc. Cominciamo da lui. Per prima cosa lo installeremo su Linux e successivamente tratteremo le operazioni di base del database.

Installazione di SQLite

Per installare sulla tua macchina basata su Debian (Ubuntu, Debian, ecc.), esegui i comandi seguenti.

$ sudo apt update
$ sudo apt install sqlite3

Per installare sulla tua macchina basata su RPM (RHEL, CentOS, Fedora, ecc.), esegui i comandi seguenti.

$ sudo yum update
$ sudo yum install sqlite

Puoi anche installare SQLlite usando il gestore pacchetti DNF:

sudo dnf update
sudo dnf install sqlite
To access SQLite databases from various programming languages (C, Tcl, Java), the language bindings need to be installed
sudo dnf install sqlite-devel sqlite-tcl sqlite-jdbc

Ora apri un terminale ed esegui “sqlite3”, vedrai le seguenti righe di prompt.

$ sqlite3
SQLite version 3.8.2 2013-12-06 14:53:30
Enter ".help" for instructions
Enter SQL statements terminated with a ";"

La prima riga mostra la versione di sqlite3 e la data e l’ora di rilascio.
La seconda riga dice di digitare “.help” per le istruzioni.

.Aiuto command elenca tutti i metacomandi e le loro descrizioni. Questi meta-comandi sono anche chiamati comandi “punto” perché sono preceduti da un punto.
Metti “.help” per richiedere

sqlite> .help
.backup ?DB? FILE      Backup DB (default "main") to FILE
.bail ON|OFF           Stop after hitting an error.  Default OFF
.databases             List names and files of attached databases
.dump ?TABLE? ...      Dump the database in an SQL text format
                         If TABLE specified, only dump tables matching
                         LIKE pattern TABLE.
.echo ON|OFF           Turn command echo on or off
.exit                  Exit this program
.explain ?ON|OFF?      Turn output mode suitable for EXPLAIN on or off.
                         With no args, it turns EXPLAIN on.
.header(s) ON|OFF      Turn display of headers on or off
.help                  Show this message
.import FILE TABLE     Import data from FILE into TABLE
.indices ?TABLE?       Show names of all indices
                         If TABLE specified, only show indices for tables
                         matching LIKE pattern TABLE.
.load FILE ?ENTRY?     Load an extension library
.log FILE|off          Turn logging on or off.  FILE can be stderr/stdout
.mode MODE ?TABLE?     Set output mode where MODE is one of:
                         csv      Comma-separated values
                         column   Left-aligned columns.  (See .width)
                         html     HTML table code
                         insert   SQL insert statements for TABLE
                         line     One value per line
                         list     Values delimited by .separator string
                         tabs     Tab-separated values
                         tcl      TCL list elements
.nullvalue STRING      Use STRING in place of NULL values
.open ?FILENAME?       Close existing database and reopen FILENAME
.output FILENAME       Send output to FILENAME
.output stdout         Send output to the screen
.print STRING...       Print literal STRING
.prompt MAIN CONTINUE  Replace the standard prompts
.quit                  Exit this program
.read FILENAME         Execute SQL in FILENAME
.restore ?DB? FILE     Restore content of DB (default "main") from FILE
.schema ?TABLE?        Show the CREATE statements
                         If TABLE specified, only show tables matching
                         LIKE pattern TABLE.
.separator STRING      Change separator used by output mode and .import
.show                  Show the current values for various settings
.stats ON|OFF          Turn stats on or off
.tables ?TABLE?        List names of tables
                         If TABLE specified, only list tables matching
                         LIKE pattern TABLE.
.timeout MS            Try opening locked tables for MS milliseconds
.trace FILE|off        Output each SQL statement as it is run
.vfsname ?AUX?         Print the name of the VFS stack
.width NUM1 NUM2 ...   Set column widths for "column" mode
.timer ON|OFF          Turn the CPU timer measurement on or off

Prima di spiegare questi comandi punto, vediamo alcune operazioni di base del database.

Eseguire prima il comando “.quit” per terminare la sessione.

Crea una banca dati

Eseguire il comando seguente al prompt della shell.

Questo creerà il file di database “example.db” (puoi inserire il nome che desideri al posto di “example.db”) (se non esiste). Se esiste, apri il database contenuto nel file.

$ sqlite3 example.db
SQLite version 3.8.2 2013-12-06 14:53:30
Enter ".help" for instructions
Enter SQL statements terminated with a ";"

La differenza tra il comando “sqlite3” e “sqlite3 dbname.db” è che il primo creerà un database temporaneo per la sessione e scadrà alla chiusura della sessione.

Crea tabella

Creiamo una tabella studente con gli attributi:

reg_no int(4)
nome varchar(20)
segna int(3)

inserire i seguenti comandi nel terminale

sqlite> create table student (
   ...> reg_no int(4),
   ...> name   varchar(20),
   ...> marks  int(3)
   ...> );

Questo creerà una tabella studente con gli attributi di cui sopra.

Puoi vedere l’elenco delle tabelle nel database selezionato per .tavolo comando

sqlite> .table
student

C’è solo uno studente tradizionale nel mio caso.

Puoi anche vedere lo schema della tabella usando .schema nometabella

sqlite> .schema student
CREATE TABLE student (
reg_no int(4),
name   varchar(20),
marks  int(3)
);

Inserimento dati

Inseriamo 3 record nella tabella
101, Pradip, 87
102, Avinash, 86
103, Rakesh, 90

Immettere il seguente comando uno per uno

sqlite> insert into student (reg_no, name, marks) values (101, 'Pradip', 87);
> insert into student (reg_no, name, marks) values (102, 'Avinash', 86);
> insert into student (reg_no, name, marks) values (103, 'Rakesh', 91);

Raccolta dati

È possibile recuperare i dati dalla tabella con l’istruzione select

sqlite> select * from student;
101|Pradip|87
102|Avinash|86
103|Rakesh|91

Visualizza il risultato in modalità predefinita (elenco).

Puoi cambiare la modalità con .modulo comando

Immettere la colonna .mode da richiedere e quindi eseguire una query di selezione. Visualizzerà il risultato in un formato di colonna.

sqlite> .mode column
> select * from student;
reg_no      name        marks     
----------  ----------  ----------
101         Pradip      87        
102         Avinash     86        
103         Rakesh      91        

Delete, Alter, Drop etc hanno la stessa sintassi di sql.

Comandi speciali per sqlite3 (dot -commands)

Ho visto che i comandi “.help” elencano tutti i comandi con punti. Comprendiamo alcuni altri comandi importanti.

1).database

Visualizza il nome del database selezionato.

sqlite> .database
seq  name             file                                                      
---  ---------------  --------------------
0    main             /home/avi/example.db

Elenca le tabelle nel database selezionato.

sqlite> .table
student

2) .guarda

Mostra le impostazioni correnti

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

3) .intestazione ON|OFF

È possibile visualizzare il nome dell’attributo nel risultato della query eseguendo il comando .header ON|OFF

sqlite> .header ON
> select * from student;
reg_no      name        marks     
----------  ----------  ----------
101         Pradip      87        
102         Avinash     86        
103         Rakesh      91        

4).modulo

Il programma è in grado di visualizzare i risultati di una query in otto diversi formati: “csv”, “column”, “html”, “insert”, “line”, “list”, “tabs”, “tcl”..mode Il comando viene utilizzato per passare da un formato di output all’altro.

sqlite> .mode csv
> select * from student;
reg_no,name,marks
101,Pradip,87
102,Avinash,86
103,Rakesh,91

Puoi usare .separatore comando di cambio separatore.

sqlite> .separatore –
> seleziona * dallo studente;
reg_no-name-marks
101-Pradip-87
102-Avinash-86
103-Rakesh-91

Scrivere i risultati in un file

per impostazione predefinita, invia i risultati della query allo standard output.
puoi cambiarlo usando i comandi “.output” e “.once”.

Basta inserire il nome di un file di output come argomento in .output e tutti i successivi risultati della query verranno scritti in quel file.

sqlite> .output ex.txt

Oppure usa .una volta filename se si desidera reindirizzare il risultato della query successiva.

Ho installato con successo SQLite su Linux con operazioni di base. Queste operazioni sono solo alcune di esse tutto valido. Non possiamo coprirli tutti in questo articolo. Se trovi qualche difficoltà in un’installazione o in qualsiasi comando, fammelo sapere nella sezione commenti.

Related Articles

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Back to top button
Close