SQLite

SQLite-zelfstudie

SQLite-zelfstudie

Sinds de mens begon met het maken van systemen, zijn er altijd databases geweest die daarmee overeenkomen. Snel vooruitspoelen naar onze huidige tijd waarin technologie is geëvolueerd en bijna alles nu is geautomatiseerd. Bij het ontwikkelen van systemen en applicaties was SQL de leidende taal die ontwikkelaars gebruiken om databases te maken en te beheren. Om SQL goed te laten werken, heeft het een engine nodig. Deze engine is dan verantwoordelijk voor het afhandelen van bewerkingen en transacties in de database.

Wat is SQLite?

SQLite is een snelle en eenvoudige open source SQL-engine. Hoewel deze engine anderen misschien in de war brengt met volledige RDBMS's zoals Postgres en MySQL, is SQLite anders en presteert het op zijn hoogtepunt in bepaalde omstandigheden. SQLite is een nieuwe bibliotheek die een serverloze, op zichzelf staande SQL-database-engine zonder setup afdwingt. Omdat het geen configuratie nodig heeft zoals andere databases, is het gemakkelijker te gebruiken en te installeren. In tegenstelling tot andere databases is het geen op zichzelf staand proces. U kunt de database aan uw toepassing koppelen, zodat de records die erin worden opgeslagen, dynamisch of statisch kunnen worden geopend.

Er is altijd een misvatting geweest dat SQLite alleen voor ontwikkeling en testen is and. Hoewel het een geweldig hulpmiddel is voor die taak, is het niet alleen beperkt tot systeemtesten. SQLite kan bijvoorbeeld een website aan die aan de onderkant meer dan 100.000 bezoeken per dag ontvangt. De maximale groottelimiet voor SQLite is 140 Terabytes, wat meer is dan wat de meeste applicaties klokken.

Waarom zou je SQLite gebruiken??

Omdat het is geschreven in ANSI-C, is de API gemakkelijk te gebruiken en vrij eenvoudig.


INSTALLATIE

Omdat de trots van SQLite voortkomt uit de verrassend eenvoudige configuratie, is het installatieproces vrij eenvoudig. In deze tutorial zullen we ons meer concentreren op Linux dan op andere platforms. Tegenwoordig merken we dat SQLite wordt geleverd met bijna alle versies van het Linux-besturingssysteem. Dus, voordat u de moeite neemt om het te installeren, moet u controleren of de installatie al heeft plaatsgevonden. Typ dit voor de zekerheid:

$ sqlite3

Indien correct geïnstalleerd, zou u het volgende resultaat moeten zien:

SQLite-versie 3.7.15.2 2013-01-09 11:53:05
Vul in ".help" voor instructies
Voer SQL-instructies in die eindigen op een ";"
sqlite>

Zo niet, dan betekent dit dat SQLite niet op uw systeem is geïnstalleerd. Om te installeren, kunt u;

Ga naar de officiële SQLite-pagina en download SQLite-autoconf-*.teer.gz uit het gedeelte met de broncodes. Open daarna de opdrachtregel en voer de volgende opdracht uit;

$tar xvfz SQLite-autoconf-3071502.teer.gz
$cd SQLite-autoconf-3071502
$./configure --prefix = /usr/local
$make
$make install

U kunt ook de volgende methode gebruiken om te installeren:

sudo apt-get update
sudo apt-get install sqlite3

Beide methoden zullen hetzelfde doen. U kunt bevestigen dat de installatie is voltooid door de eerste test uit te voeren.


Meta-opdrachten

Meta-opdrachten worden meestal gebruikt voor administratieve handelingen zoals het onderzoeken van databases en het definiëren van uitvoerformaten. Het unieke van al deze commando's is dat ze altijd beginnen met een punt (.). Hier zijn enkele van de meest voorkomende die in de loop van de tijd van pas komen.

Opdracht Omschrijving
.dumpen Dumpdatabase meestal SQL-tekstindeling
.tonen Geeft de huidige instellingen voor verschillende parameters weer
.databases Biedt volledige databasenamen en bestanden
.stoppen met Sluit het SQLite3-programma af
.tafels Toon een lijst van alle huidige tabellen
.schema Schema van de tabel weergeven
.koptekst Verbergt of toont de koptekst van de uitvoertabel
.modus Selecteer modus voor de uitvoertabel

Standaard opdrachten

Bij het omgaan met SQLite bestaan ​​er gemeenschappelijke commando's die worden gebruikt voor verschillende activiteiten in de database. Ze worden standaardopdrachten genoemd, omdat dit meestal de meest gebruikte zijn. Ze zijn ingedeeld in drie groepen vanwege hun verschillende functies binnen het bereik:.

Taal voor gegevensdefinitie

De allereerste groep zijn de opdrachten die verantwoordelijk zijn voor de opslagstructuur en ook methoden voor gegevenstoegang vanuit de database. Zij zijn:

Data Manipulatie Taal

Dit zijn de commando's die meestal worden gebruikt om gegevens in de database te manipuleren. Gegevensmanipulatie omvat het toevoegen, verwijderen en wijzigen van de gegevens. In deze sectie hebben we:

Taal voor gegevensquery

Het laatste type commando's zijn die waarmee de gebruikers bepaalde gegevens uit de databases kunnen halen. Hier hebben we er maar één:

Het is belangrijk op te merken dat dit niet de enige commando's zijn die SQLite kan ondersteunen. Omdat we ons echter in de beginnersfase bevinden, zullen we deze voorlopig alleen verkennen.


Een database maken

Bij het omgaan met SQLite3 worden opdrachten gebruikt om een ​​nieuwe database te maken. In tegenstelling tot andere RDBMS'en, hoeft u hiervoor geen speciale privileges te hebben. Onthoud dat de databasenaam uniek moet zijn. Het volgende is de syntaxis voor het maken van een database:

sqlite3 databasenaam.db

Een nieuwe database genaamd linuxDB zou als volgt worden geschreven:

$ sqlite3 linuxDB.db
SQLite-versie 3.21.0 2017-10-24 00:53:05
Vul in ".help" voor instructies
Voer SQL-instructies in die eindigen op een ";"
SQLite>

U kunt de aanmaak van de database bevestigen met behulp van de .databases commando.

sqlite>.databases
volgende naam bestand name
--- --------------- ----------------------
0 hoofd /home/SQLite/linuxDB.db

Tabellen maken

Aangezien tabellen het skelet van de database zijn, is het essentieel om te weten hoe ze te maken. Om een ​​tabel te maken, moet u de tabel een naam geven, de kolommen en het gegevenstype voor elke kolom definiëren. Dit is de syntaxis voor het maken van een tabel.

CREATE TABLE databasenaam.tafel naam(
kolom1 gegevenstype PRIMAIRE SLEUTEL (een of meer kolommen),
kolom2 gegevenstype,
kolom3 gegevenstype,

kolomN gegevenstype
);

In actie, dit is hoe een voorbeeldtabel met de naam product_x eruit zal zien. De ID is de primaire sleutel. U moet altijd onthouden om velden op te geven die niet null kunnen zijn.

sqlite> TABEL MAKEN product_x(
ID INT PRIMAIRE SLEUTEL NIET NULL,
NAAM TEKST NIET NULL,
EENHEDEN INT NIET NULL,
PRIJS IN,
KORTING ECHT
);

Tafel laten vallen

Deze opdracht wordt gebruikt wanneer de ontwikkelaar een tabel wil verwijderen samen met de volledige inhoud ervan. Je moet altijd voorzichtig zijn bij het gebruik van deze opdracht, want zodra de tabel is verwijderd, zijn alle daaropvolgende gegevens voor altijd verloren. Dit is de syntaxis:

DROP TABLE databasenaam.tafel naam;

sqlite> DROP TABLE product_x;

Tabel wijzigen

Deze opdracht wordt gebruikt om de inhoud van een tabel te bewerken zonder de gegevens te dumpen en opnieuw te laden. In SQLite zijn er slechts twee bewerkingen die u met deze opdracht op een tabel kunt uitvoeren; een tabel hernoemen en huidige kolommen toevoegen of verwijderen.

Dit is de syntaxis voor respectievelijk het hernoemen van een reeds bestaande tabel en het toevoegen van een nieuwe kolom;

ALTER TABLE databasenaam.table_name RENAME NAAR nieuwe_table_name;
ALTER TABLE databasenaam.table_name ADD COLUMN column_def… ;

Een tabel met de naam product_x kan bijvoorbeeld worden hernoemd naar product_yz en we kunnen een nieuwe kolom toevoegen aan product_yz in de twee onderstaande regels code:

sqlite3> WIJZIG TABEL product_x
… > NAAM NAAR product_yz;
sqlite3> WIJZIG TABEL product_yz
… > KOLOM TOEVOEGEN naam fabrikant TEKST;

Zoekopdracht invoegen

De opdracht INSERT INTO wordt gebruikt om gegevensrijen toe te voegen aan een tabel in de database. De syntaxis hiervoor is vrij direct:

INSERT INTO TABLE_NAME VALUES (waarde1,waarde2,waarde3,…waardeN);

Kolom1, kolom2,... kolomN zijn de namen van de kolommen die horen bij de tabel waarin u gegevens wilt invoegen. Het is belangrijk om specifiek de kolomnaam in SQLite te noteren bij het toevoegen van waarden aan alle kolommen in de tabel.

SELECT-query

De SELECT-instructie in SQLite wordt voornamelijk gebruikt om gegevens uit de SQLite-database op te halen en deze gegevens te retourneren in de vorm van een resultatenset. Dit is de syntaxis voor het gebruik van de SELECT-instructie;

SELECT kolom1, kolom2, kolomN FROM tabelnaam;

Van de bovenstaande syntaxis zijn kolom1, kolom2... de respectievelijke velden in de tabel waar u waarden wilt ophalen. Als u alle velden in die tabel wilt ophalen, gebruikt u de volgende syntaxis:. Het jokerteken (*) betekent in feite 'alle'.

SELECTEER * VAN TABLE_NAME;

UPDATE-query

In een database moeten records om de een of andere reden veranderen. Stel dat een gebruiker zijn e-mailadres op uw platform wil wijzigen, dan is dit precies de opdracht die u nodig hebt om dit proces te laten werken. Terwijl we de UPDATE-component gebruiken, moeten we ook de WHERE-component gebruiken om de geselecteerde rijen bij te werken. Zo niet, dan zult u zien dat alle rijen zijn bijgewerkt! Dat zou heel erg zijn. Dit is de syntaxis voor het uitvoeren van deze bewerking:

UPDATE tabelnaam
SET kolom1 = waarde1, kolom2 = waarde2… ., kolomN = waardeN
WAAR [voorwaarde];

Als je aan een N aantal voorwaarden moet voldoen, zijn de AND- of OR-operatoren erg handig. Voorbeeld:

sqlite> UPDATE product_x
… > STEL EENHEDEN IN = 103 WAAR ID = 6;

De AND & OR operators

Dit zijn de zogenaamde conjunctieve operatoren. Ze worden gebruikt om verschillende voorwaarden te compileren om de geselecteerde gegevens in een SQLite-omgeving te verkleinen. Deze operators maken het voor een ontwikkelaar mogelijk om meerdere vergelijkingen van waarden te maken met behulp van verschillende operators op één SQLite-instructie.

De AND-operator is uniek omdat de gebruiker meerdere voorwaarden kan hebben in combinatie met de WHERE-componentWH. Bij gebruik van deze operator wordt de voorwaarde als waar beschouwd als aan alle voorwaarden is voldaan. Dit is de syntaxis voor de AND-operator.

SELECT kolom1, kolom2, kolomN
FROM tabelnaam
WAAR [voorwaarde1] EN [voorwaarde2]… EN [voorwaardeN];

Aan de andere kant hebben we de OR-operator die ook samen met de WHERE-component wordt gebruikt. In tegenstelling tot de AND-operator, is de voorwaarde waar als aan een van de voorwaarden is voldaan. De syntaxis is vrij eenvoudig.

SELECT kolom1, kolom2, kolomN
FROM tabelnaam
WHERE [voorwaarde1] OF [voorwaarde2]... OF [voorwaardeN]

Bronnen en aanvullende informatie

http://linuxgazette.net/109/chirico1.html
http://www.yolinux.com/TUTORIALS/SQLite.html
https://www.sitepunt.com/aan de slag-sqlite3-basic-commands/
https://www.digitale oceaan.com/community/tutorials/hoe-en-wanneer-sqlite-gebruiken
http://www.thegeekstuff.com/2012/09/sqlite-opdracht-voorbeelden/?utm_source=feedburner

Linkermuisknop werkt niet op Windows 10
Als u een speciale muis gebruikt met uw laptop of desktopcomputer, maar de linkermuisknop werkt niet not op Windows 10/8/7 om wat voor reden dan ook, ...
Cursor springt of beweegt willekeurig tijdens het typen in Windows 10
Als u merkt dat uw muiscursor vanzelf springt of beweegt, automatisch, willekeurig tijdens het typen op een Windows-laptop of -computer, dan kunnen en...
De scrollrichting van de muis en touchpads omkeren in Windows 10
Muis en Touchpads maken computergebruik niet alleen eenvoudig, maar ook efficiënter en minder tijdrovend. We kunnen ons een leven zonder deze apparate...