Tutorial SQLite: Tot ce trebuie să știți



Acest tutorial sqlite vă va ajuta să înțelegeți cât de diferit este sqlite de alte sisteme de baze de date relaționale și de toate comenzile de bază

Dacă ați lucrat cu sisteme de baze de date relaționale, este probabil că ați auzit de sisteme de baze de date populare, cum ar fi MySQL , Server sau PostgreSQL . SQLite este un alt RDBMS extrem de util, care este foarte simplu de configurat și operat. De asemenea, are multe caracteristici distincte față de alte baze de date relaționale. Acest tutorial SQLite învață concepte de bază pe care trebuie să le cunoașteți cu ajutorul unor practici practice practice.

Subiectele discutate în acest articol sunt:





Tutorial SQLite: Ce este SQLite?

Iată definiția standard a industriei SQLite:

SQLite este un motor de baze de date relaționale cu tranzacții open-source, cu configurare zero, autonom, independent, conceput pentru a fi încorporat într-o aplicație.

Puteți lua în considerare SQLite ca ' mai usoara ”Versiune a altor RDBMS complexe (Oracle, , etc.), unde este configurat motorul său de baze de date procesare independentă (bibliotecă în proces) adică a fără server, autonom, cu configurare zero și tranzacțională . Este cunoscut pentru portabilitate, fiabilitate și performanță puternică, chiar și în medii cu memorie redusă. De asemenea, SQLite este o alegere populară ca bază de date încorporată pentru stocare locală / clientă în programe sau aplicații finale, spre deosebire de alte RDBMS, unde este configurat motorul client-server DB.



Caracteristicile SQLite

SQLite oferă multe caracteristici distincte, cum ar fi:

  • Fără server: Cel mai Baze de date SQL sunt implementate ca un proces server separat, dar SQLite nu are un proces server separat. Este un motor de baze de date fără server. Citește și scrie direct pe fișiere de disc obișnuite.
  • Configurare zero: Aceastanu necesită nicio configurație pentru a o rula. Aceasta înseamnă că nu există niciun proces server care să fie pornit, oprit sau configurat ca într-un sistem client / server.
  • Tastare manifestă: SQLite utilizează tastarea manifestului, care permite stocarea oricărei cantități de orice tip de date în orice coloană, indiferent de tipul de date declarat al coloanei. Rețineți că există anumite excepții de la această regulă.
  • Ușoare: După cum sugerează și numele, biblioteca SQLite este foarte ușoară. Lucrul este, deși spațiul pe care îl folosește variază în funcție de sistemul în care este instalat, poate ocupa mai puțin de 600 KB de spațiu.
  • Portabil: Spre deosebire de alte SGBD, unîntreaga bază de date SQLite este stocată într-un singur fișier.Acest fișier poate fi partajat prin intermediul unui suport amovibil sau a unui protocol de transfer de fișiere foarte ușor.
  • Alegere diversă: Multe limbaje de programare oferă legături pentru SQLite, inclusiv , , C # , , , Rubin , , si multe altele.
  • Liber: SQLite este gratuit și open-source. Pentru a lucra cu SQLite nu este necesară o licență comercială.

Așa cum este enumerat mai sus SQLiteeste cunoscut pentru configurarea sa zero, ceea ce înseamnă că nu este necesară nicio configurare sau administrare complexă. În următoarea parte a acestui tutorial SQLite, să vedem cum să instalați SQLite pe sistemul dvs.

Tutorial SQLite: Instalarea SQLite pe Windows

Pașii de urmat sunt:



Pasul 1: Du-te la SQLite oficial site-ul web și faceți clic pe linkul potrivit pentru descărcarebinare precompilate.

șirurile din java sunt imuabile

Pasul 2: Descărcați fișierul zip din linia de comandă SQLite (aici: sqlite-tools-win32-x86-3270200.zip) și extindeți aceste fișiere într-un dosar la alegere.

Acest instrument SQLite din linia de comandă va conține următoarele produse SQLite

  • Miez SQLite : Nucleul SQLite conține motorul de bază de date real și API-ul public.
  • Instrument SQLite3 pentru linia de comandă : Aplicația sqlite3 este un instrument de linie de comandă care este construit deasupra nucleului SQLite.
  • Extensie Tcl : Această bibliotecă este în esență o copie a nucleului SQLite cu legăturile Tcl fixate.
  • Instrument de analiză SQLite : Instrumentul de analiză SQLite este utilizat pentru a analiza fișierele bazei de date.

Pasul 3: După aceea, inițierea liniei de comandă SQLite este la fel de simplă ca un clic pe aplicația sqlite3, ceea ce va face ca linia de comandă să apară.

Dacă doriți să testați mai departe, pur și simplu tastați .Ajutor comanda din sqlite> solicitați să vedeți toate comenzile disponibile în sqlite3 așa cum se arată mai jos.

Notă: În mod implicit, o sesiune SQLite folosește baza de date în memorie, prin urmare, toate modificările vor dispărea la sfârșitul sesiunii.

Destul de simplu nu? Apoi, să începem cu comenzile SQLite.

Tutorial SQLite: Comenzi SQLite

Această secțiune a tutorialului SQLite prezintă instrucțiuni SQL de bază pe care le puteți utiliza cu SQLite.

Notă: Comenzile SQLite se termină cu punct și virgulă (). Acesta spune SQLite că comanda dvs. este completă și ar trebui executată.De asemenea, vă puteți răspândi comanda pe mai multe linii și puteți utiliza punctul și virgula pe ultima linie.

Comenzi de baze de date

Această secțiune constă din acele comenzi, prin care puteți gestiona baza de date. Comenzile sunt:

  • SQLite Creați baza de date

SQLite nu folosește instrucțiunea CREATE DATABASE ca în alte sisteme de gestionare a bazelor de date relaționale, cum ar fi MySQL , SQL Server etc. Pentru a crea o nouă bază de date în SQLite, pur și simplu introduceți sqlite3 urmat de numele fișierului pe care doriți să îl utilizați pentru baza de date. Turmătorul cod creează un fișier de bază de date numit StudentDetails.db:

Exemplu

sqlite3 StudentDetails.db sqlite> .baze de date principale: D: sqliteStudentDetails.db
  • SQLite Attach Database

Când aveți mai multe baze de date, puteți utiliza una singură la un moment dat. În SQLite, instrucțiunea ATTACH DATABASE este utilizată pentru a atașa o anumită bază de date pentru conexiunea curentă. Adupă această comandă, toate instrucțiunile SQLite vor fi executate în baza de date atașată.

Exemplu

sqlite> ATTACH DATABASE 'DepartmentDetails.db' AS 'Department' sqlite> .baze de date principale: D: sqliteStudentDetails.db Departamentul: D: sqliteDepartmentDetails.db
  • SQLite Detach Database

În SQLite, instrucțiunea DETACH DATABASE este utilizată pentru a detașa baza de date denumită alias de la o conexiune de bază de date care a fost atașată anterior utilizând instrucțiunea ATTACH. Dacă același fișier de bază de date a fost atașat cu mai multe aliasuri, atunci această comandă va deconecta doar numele dat și restul atașamentului va continua să existe.Bazele de date din baza de date memorată sau temporară vor fi distruse complet și conținutul va fi pierdut.

Exemplu

sqlite> .baze de date principale: D: sqliteStudentDetails.db Departament: D: sqliteDepartmentDetails.db Student: D: sqliteStudentDetails.db DeptInformation: D: sqliteDepartmentDetails.db sqlite> DETACH DATABASE 'Department' sqlite> sqlite: sqlite>. Student: D: sqliteStudentDetails.db DeptInformation: D: sqliteDepartmentDetails.db

Comenzi de masă

Aici vom învăța cum să abordăm tabelele atunci când utilizați SQLite.

  • SQL Create Table

În SQLite, instrucțiunea CREATE TABLE este utilizată pentru a crea un nou tabel. În timp ce creați tabelul, trebuie să denumiți tabelul și să definiți coloana și tipurile de date ale fiecărei coloane.

Sintaxă:

CREATE TABLE nume_tabel (Coloana1 tip_coloană [constrângeri] Coloană2 tip_coloană [constrângeri] [.....])

Exemplu

CREAȚI TABEL StudentInfo (ID INT TASTĂ PRIMARĂ NU NULĂ, NUMELE TEXTUL NU ESTE NULUĂ, VARĂ INT NU NULĂ, ADRESA CHAR (50), DEPARTMENTID INTEGER NOT NULL, TELEFON TEXT DEFAULT 'NECUNOSCUT', CHEIE STRĂINĂ (DEPARTMENTID) REFERINȚE DepartmentInfo (DeptID))

Puteți verifica dacă tabelul a fost creat sau nu utilizând .Mese comanda așa cum se arată mai jos. Rețineți că am creat deja un tabel numit DepartmentInfo unde DeptID este cheia principală.Tabelul Departamente are o constrângere de cheie străină la tabelul Studenți.

sqlite> .tables StudentInfo Contacte Emp_Master
  • SQLite Drop Table

În SQLite, instrucțiunea DROP TABLE vă permite să eliminați sau să ștergeți un tabel din baza de date SQLite. Odată ce tabelul este abandonat, toate datele pe care le conține sunt eliminate definitiv din baza de date. Orice index și declanșator asociat este, de asemenea, eliminat. Dacă există vreo constrângere de cheie externă activată pe tabela respectivă, atunci aceasta va fi eliminată în mod echivalent pentru fiecare rând din tabel și orice declanșatoare asociate tabelului vor fi, de asemenea, eliminate.

Sintaxă

DROP TABLE [IF EXISTS] nume_tabel

Exemplu

DROP TABLE Eroare departament: nu există un astfel de tabel: Departament DROP TABLE Compania sqlite> .tables StudentInfo

Notă: DACĂ EXISTĂ, este o clauză opțională. Dacă este specificat, instrucțiunea DROP TABLE nu va genera o eroare dacă unul dintre tabele nu există.

De asemenea, există un Instrucțiune SQLite Alter Table , pe care îl vom înțelege în următoarele secțiuni ale acestui articol. Acum că am creat un tabel, să verificăm cum să inserăm, să ștergem și să modificăm datele.

Tutorial SQLite: Operațiuni CRUD

  • SQLite Insert Query

După crearea tabelului, comanda SQLite Insert Into poate fi utilizată pentru a crea rânduri noi în tabelul specificat. Există două forme semnificative ale instrucțiunii de inserare SQLite. Primul formular folosește o clauză VALUES pentru a specifica o listă de valori de inserat.

Sintaxă

INSERT INTO TABLE_NAME [(coloana1, coloana2, coloana3, ... coloanaN)] VALORI (valoare1, valoare2, valoare3, ... valoareN)

Exemplu

INSERAȚI ÎN StudentInfo (ID, NUME, VARSĂ, ADRESĂ, DEPARTMENTID, TELEFON) VALORI (1, „Decan”, 20, „California”, 2, „934 *******”)

Ieșire

SELECT * din ID-ul StudentInfo NUME VÂRTĂ ADRESĂ DEPARTAMENT TELEFON ---------- ---------- ---------- ---------- ---------- ---------- 1 Decan 20 California 2 934 *******

Aici, se creează un singur rând nou și fiecare valoare este înregistrată în coloana respectivă. Rețineți că ambele liste trebuie să aibă la fel numărul de articole. Aici lista coloanelor este opțional. De asemenea, putem insera date în tabel fără a specifica lista coloanelor .

Exemplu

INSERAȚI ÎN VALOARE StudentInfo (2, „SAM”, 22, „Texas”, 2, „976 *******”)

Ieșire

SELECT * din ID-ul StudentInfo NUME VÂRTĂ ADRESĂ DEPARTAMENT TELEFON ---------- ---------- ---------- ---------- ---------- ---------- 1 Decan 20 California 2 934 ******* 2 SAM 22 Texas 2 976 *******

SQLite oferă, de asemenea, o caracteristică pentru introduceți mai multe rânduri într-o singură declarație INSERT. Sintaxa este așa cum se arată mai jos.

Exemplu

INSERAȚI ÎN VALOARE StudentInfo (3, „John”, 23, „Norvegia”, 1, „923 *******”), (4, „Mitch”, 22, „Houston”, 3, „934 ** ***** ')

Ieșire

Selectați * din StudentInfo 1 | Decan | 20 | California | 2 | 934 ******* 2 | SAM | 22 | Texas | 2 | 976 ******* 3 | John | 23 | Norvegia | 1 | 923 ******* 4 | Mitch | 22 | Houston | 3 | 934 *******

După cum puteți vedea, formatul ieșirii nu este destul de similar cu cel anterior. Deci, cum schimbați formatul de ieșire în SQLite? Să formatăm rezultatul astfel încât rezultatele noastre să fie puțin mai ușor de citit.

  • Formarea

Puteți utiliza .mode pentru a schimba modul de ieșire. Exemplul de mai sus folosește .modul listă, care afișează rezultatele ca o listă. De asemenea, puteți utiliza .anteturi declarație pentru a specifica dacă se afișează sau nu anteturile coloanei. După ce ați făcut modificările, puteți vizualiza setarea folosind .spectacol comanda.

Exemplu

sqlite> .mode 'column' sqlite> .headers on sqlite> .show echo: off eqp: off explica: auto headers: on mode: column nullvalue: '' output: stdout colseparator: '|' rowseparator: stats 'n': off width: nume de fișier: StudentDetails.db

Ieșire

SELECTAȚI * DIN ID-ul StudentInfo NUME VÂRTĂ ADRESĂ DEPARTAMENT TELEFON ---------- ---------- ---------- ---------- ---------- 1 Decan 20 California 2 934 ******* 2 SAM 22 Texas 2 976 ******* 3 Ioan 23 Norvegia 1 923 ******* 4 Mitch 22 Houston 3 934 *******
  • SQLite Select Query

În SQLite, se folosește instrucțiunea Selectpentru a prelua date dintr-un tabel, care returnează date sub forma unui tabel de rezultate. Aceste tabele de rezultate se mai numesc rezultat seturi. Folosind instrucțiunea SQLite select putem efectua calcule simple sau expresii multiple pe baza cerințelor noastre.Am folosit deja o instrucțiune SELECT când am inserat date.

Sintaxă

SELECTEAZĂ [TOATE | DISTINCT] rezultat [FROM table-list] [WHERE expr]
  • DISTINCT - Când folosim un cuvânt cheie distinct într-o declarație selectată, acesta returnează numai rânduri distincte de date.
  • TOATE - Dacă folosim ALL cuvânt cheie într-o instrucțiune select, acesta returnează toate rândurile de date chiar dacă este duplicat.
  • DIN lista de tabele - Este o listă de tabele din care doriți să obțineți date.
  • UNDE expresie - Expresia WHERE este utilizată pentru a defini condițiile noastre personalizate pentru a obține datele necesare din tabele.

Exemplul 1

combinați sortarea codului sursă c ++
SELECȚIAȚI ID-ul, NUMELE DE LA StudentInfo WHERE AGE<21

Ieșire

NUME ID ---------- ---------- 1 Decan

Exemplul 2

Selectați NUME DIN StudentInfo WHERE DEPARTMENTID = (SELECȚIE DeptID DIN DepartmentInfo WHERE DeptName = 'Psihologie')

Ieșire

// preia persoane din departamentul al căror cod este 2 NAME ---------- Dean SAM
  • Interogare SQLite Update

În SQLite, instrucțiunea UPDATE poate fi utilizată pentru a modifica înregistrările existente într-un tabel.Clauza WHERE a SQLite poate fi utilizată pentru a specifica exact rândurile care trebuie actualizate. Puteți actualiza cu ușurință toate rândurile, unele rânduri sau niciunul, în funcție de condițiile de filtrare aplicate de clauza WHERE.

Sintaxă

ACTUALIZARE nume_tabel SET coloană1 = valoare1, coloană2 = valoare2 ...., coloanăN = valoareN UNDE [condiție]

Exemplu

ACTUALIZAȚI StudentInfo SET DEPARTMENTID = 4 WHERE ID = '2'

Ieșire

SELECTAȚI * DIN ID-ul StudentInfo NUME VÂRTĂ ADRESA DEPARTAMENT TELEFON ---------- ---------- ---------- ---------- ------------ ---------- 1 Decan 20 California 2 934 ******* 2 SAM 22 Texas 4 976 ******* 3 Ioan 23 Norvegia 1 923 ******* 4 Mitch 22 Houston 3 934 *******
  • SQLite Delete Query

În SQLite, instrucțiunea DELETE poate fi utilizată pentru a șterge înregistrarea din tabel. Puteți șterge cu ușurință toate rândurile, unele rânduri sau niciunul, în funcție de condițiile de filtrare aplicate de clauza WHERE.

Exemplu

ȘTERGEȚI DE LA DepartmentInfo UNDE DeptName = „Știință”

Ieșire

SELECT * FROM DepartmentInfo DeptID DeptName ---------- ----------- 1 Matematică 2 Psihologie 3 Sport 4 Muzică

Dacă încercați să ștergeți o înregistrare la care se face referire printr-o cheie străină, veți primi o eroare. Va trebui mai întâi să ștergeți înregistrările cheilor străine, înainte de a șterge înregistrarea cheii primare. Să încercăm să ștergem știința departamentului.

Exemplu

ȘTERGEȚI DE LA DepartmentInfo WHERE DeptName = Eroare „Muzică”: constrângerea FOREIGN KEY a eșuat

Deci, trebuie să ștergem înregistrările cheilor străine înainte de a șterge cheia primară.

DELETE FROM StudentInfo WHERE DEPARTMENTID = 4 sqlite> DELETE FROM DepartmentInfo WHERE DeptName = 'Music' sqlite> SELECT * FROM DepartmentInfo DeptID DeptName ---------- ----------- 1 Matematică 2 Psihologie 3 Sport SELECTEAZĂ * DIN ID-ul StudentInfo NUME VARSĂ ADRESĂ DEPARTAMENT TELEFON ---------- ---------- ---------- ------- --- ------------ ---------- 1 Decan 20 California 2 934 ******* 3 Ioan 23 Norvegia 1 923 ****** * 4 Mitch 22 Houston 3 934 *******

Acum știți cum să editați înregistrările din tabelul SQLite Database. Trecând mai departe în acest blog tutorial SQLite, să discutăm clauzele și condițiile pe care le întâlniți cel mai frecvent în SQLite.

Clauze / condiții SQLite

Înainte de a începe cu clauze, iată sintaxa completă a instrucțiunii SELECT din SQLite.

Sintaxă

SELECTEAZĂ [TOATE | DISTINCT] rezultat [FROM table-list] [WHERE expr] [GROUP BY expr-list] [HAVING expr] [compound-op select] * [ORDER BY sort-expr-list] [LIMIT integer [(OFFSET |,) integer ]]

Notă: Am actualizat tabelele StudentInfo și DepartmentInfo așa cum se arată mai jos.

// ID tabel student NUME VÂRTĂ ADRESĂ DEPARTAMENT TELEFON ---------- ---------- ---------- ---------- ------------ ---------- 1 Decan 20 California 2 934 ******* 3 Ioan 23 Norvegia 1 923 ******* 4 Mitch 22 Houston 3 934 ******* 2 SAM 22 Texas 4 976 ******* 5 Johny 23 Norvegia 2 945 ******* 6 Robin 23 Norvegia 2 NECUNOSCUT // Detalii departament DeptID DeptName - --------- ----------- 1 Matematică 2 Psihologie 3 Sport 4 Muzică 5 Știință
  • SQLite UNDE

În SQLite, clauza WHERE este utilizată pentru a impune restricții asupra instrucțiunii SELECT definind una sau mai multe condiții pentru a obține datele necesare din tabelele din baza de date.Dacă condiția specificată este îndeplinită sau adevărată, returnează o valoare specifică din tabel. Așa cum ați văzut anterior Clauza WHERE nu numai că este utilizată în instrucțiunea SELECT, dar este utilizată și în instrucțiunea UPDATE, DELETE etc.

Exemplu

SELECTAȚI NUMELE DE LA StudentInfo UNDE AGE = 23NAME ---------- John Johny Robin

În SQLite, există un număr de operatori relaționali care pot fi utilizați cu clauza WHERE.

  • SQLite GROUP BY

În SQLite, clauza GROUP BY este utilizată pentru a agrega date într-un singur rând în care se repetă valoarea uneia sau mai multor coloane specificate. Această clauză este utilizată cu clauza WHERE din instrucțiunea SELECT și precede clauza ORDER BY.

Sintaxă

SELECTAȚI rezultatul din [listă tabelă] GRUPARE PE [listă expr]
SELECTAȚI NUMELE, ADRESA DIN StudentInfo GRUPUL NUMELE NUMELE ADRESA ---------- ---------- Dean California John Norvegia Johny Norvegia Mitch Houston Robin Norvegia SAM Texas

Observați că procesul de grupare are doi pași. În primul rând, expresia GROUP BY este utilizată pentru a aranja rândurile tabelelor în diferite grupuri. Odată ce grupurile sunt definite, instrucțiunea SELECT definește modul în care aceste grupuri sunt aplatizate într-un singur rând.

  • SQLite COMANDĂ DE

În general, tabelele SQLite stochează datele în ordine nespecificată și vor returna înregistrări în aceeași ordine nespecificată în timp ce preluează date folosind instrucțiunea SQLite select. În astfel de cazuri, puteți utiliza clauza ORDER BY pentru a sorta înregistrările coloanelor fie în ordine crescătoare, fie descrescătoare. În exemplul de mai jos, am grupat și ordonat 9 în ordine descrescătoare) datele pe baza adresei.

Sintaxă

SELECȚIE expresii din tabele-listă [condiții WHERE] ORDER BY column1, column2, ... [ASC | DESC]

Exemplu

SELECTAȚI ADRESA, NUMĂRUL (ADRESA) DIN StudentInfo GRUPUL ADRESĂ ORDINĂ ÎN ADRESA DESC ADRESA NUMĂRUL (ADRESA) ---------- -------------- Texas 1 Norvegia 3 Houston 1 California 1
  • SQLite A FĂCUT

În SQLite, AVÂND clauza este identică cu UNDE clauză. Clauza HAVING este o condiție suplimentară aplicată după ce agregarea are loc împreună cu grupul de în instrucțiunea select. În general în SQLite, UNDE clauza este utilizată pentru a aplica o condiție elementelor individuale dintr-un tabel și AVÂND clauza este utilizată pentru a adăuga condiții de filtrare pe baza grupurilor create de clauza Group By.

Exemplu

SELECTAȚI ADRESA, NUMĂRUL (ADRESA) DIN GRUPUL StudentInfo ÎN ADRESA CU NUMĂR (*)> 1 NUMĂR ADRESA (ADRESA) ---------- -------------- Norvegia 3
  • Clauza limită SQLite

În SQLite, clauza LIMIT este utilizată pentru a seta o limită a înregistrărilor returnate de instrucțiunea select. Să luăm în considerare un exemplu pentru a înțelege conceptul.

Sintaxă

Alege expresii din lista de tabele [condiții WHERE] LIMIT number_rows OFFSET offset_value

Exemplu

SELECTAȚI NUMELE, ADRESA DIN StudentInfo LIMITĂ 4 OFFSET 2 NUMELE ADRESA ---------- ---------- Mitch Houston SAM Texas Johny Norvegia Robin Norvegia

DECALAJeste opțional și definește câte rânduri să omiteți la începutul setului de rezultate pe baza offset_value .

  • SQLite AND & OR

În SQLite, operatorii AND & OR sunt utilizați pentru a efectua mai multe condiții pentru instrucțiunile de selectare, inserare, actualizare și ștergere pe baza cerințelor noastre. SQLite AND operator va returna rânduri sau înregistrări care îndeplinesc condițiile definite prin utilizarea operatorului AND.

Exemplul 1

SELECTAȚI NUMELE DE LA StudentInfo UNDE VÂRSTĂ = 22 ȘI ADRESA = NUMELE „Texas” ---------- SAM

SAU condiție este utilizată pentru a defini mai multe condiții în instrucțiunile SQLite și va returna rânduri sau înregistrări din instrucțiune dacă oricare dintre condițiile îndeplinite.

Exemplul 2

SELECTAȚI NUMELE DIN StudentInfo UNDE (VÂRSTĂ = 22 ȘI ADRESA = 'Norvegia') SAU ADRESA = 'Norvegia' NUME ---------- John Johny Robin
  • SQLite GLOB Operator

În SQLite, operatorul GLOB este utilizat pentru a verifica dacă valoarea șirului dat se potrivește sau nu cu un anumit model. În cazul în care valoarea șirului se potrivește cu valoarea modelului, atunci va reveni Adevărat și este similar cu operatorul LIKE. De asemenea, GLOB este caz sensibil.

Sintaxă

SELECT * FROM table_name WHERE column_name GLOB 'expresie de căutare'

Exemplu

este masterat o diplomă postuniversitară
SELECTAȚI * DIN StudentInfo UNDE NUME GLOB „Joh *” Nume ID VÂRSTĂ ADRESĂ DEPARTAMENT TELEFON ---------- ---------- ---------- --- ------- ------------ ---------- 3 Ioan 23 Norvegia 1 923 ******* 5 Johny 23 Norvegia 2 945 ** *****
  • SQLite Distinct

În SQLite, cuvântul cheie DISTINCT va scana setul de rezultate al instrucțiunii SELECT și elimină orice rânduri duplicate. De asemenea, valorile NULL se consideră duplicate, deci dacă folosim clauza DISTINCT cu o coloană care are valori NULL, atunci va păstra doar un rând dintr-o valoare NULL. Când aplicați DISTINCT pentru mai multe coloane, atunci instrucțiunea returnează fiecare combinație unică de coulnm1 și coloana2.

Exemplu

SELECTAȚI VÂRSTA DISTINCTĂ DE LA VARSĂ StudentInfo ---------- 20 23 22
  • SQLite IN Operator

În SQLite, operatorul IN este utilizat pentru a determina dacă valoarea dată se potrivește cu o listă de valori date sau cu rezultatul returnat de subinterogare.

Exemplu

SELECTAȚI NUMELE DE LA StudentInfo UNDE ADRESA ÎN („Texas”, „Houston”) NUME ---------- Mitch SAM
  • SQLite UNION & UNION ALL

În SQLite, operatorul UNION este utilizat pentru a combina seturile de rezultate ale 2 sau mai multe instrucțiuni SELECT și elimină rândurile duplicate între diferitele instrucțiuni SELECT. Amintiți-vă că instrucțiunile SELECT pe care le-am folosit cu operatorul UNION trebuie să aibă același număr de câmpuri în seturile de rezultate cu tipuri de date similare.

Sintaxă

SELECT expression1, expression2, ... expression_n FROM tabele [condiții WHERE] UNION / UNION ALL SELECT expression1, expression2, ... expression_n FROM tabele [condiții WHERE]

Exemplu

SELECT DEPARTMENTID DIN StudentInfo UNION SELECT DeptId FROM DepartmentInfo COMANDĂ DE DEPARTMENTID ASC DEPARTMENTID ------------ 1 2 3 4 5

Operatorul UNION ALL este folosit pentru a combina seturile de rezultate a 2 sau mai multe instrucțiuni SELECT și va returna toate rândurile, inclusiv duplicatele.

Exemplu

SELECT DEPARTMENTID DIN StudentInfo UNION TOATE SELECT DeptId FROM DepartmentInfo ORDER BY DEPARTMENTID ASC DEPARTMENTID ------------ 1 1 2 2 2 2 3 3 4 4 5

Cu aceasta, am acoperit cele mai de bază comenzi pe care ar trebui să le utilizați atunci când lucrați cu SQLite. Înaintând cu acest tutorial SQLite, să verificăm declarația join din SQLite.

Se alătură în SQLite

În SQLite, Asocierile suntfolosit pentru a combina înregistrări din două sau mai multe tabele dintr-o bază de date și pentru a obține înregistrări pe baza cerințelor noastre. Dtipurile mai diferite de JOINS disponibile în SQLite sunt:

  • Alăturare interioară -INNER JOIN este utilizat pentru a combina și a returna numai înregistrările potrivite din tabele multiple pe baza condițiilor definite în instrucțiunile SQLite.
  • Alăturare exterioară -SQLite Outer Join va selecta rânduri potrivite din mai multe tabele la fel ca Alăturare interioară și alte câteva rânduri în afara relației.În termeni simpli, putem spune SQLiteALĂTURAȚI-VĂeste un adaos deINTERIOR ÎNREGISTRARE . În general, avem trei tipuri de Outer Joins în standardul SQL, acestea sunt LEFT, RIGHT și FULL Outer Joins, dar SQLite acceptă doar LEFT OUTER JOIN.
  • Alăturați-vă -Este folosit pentru a obține produsul cartezian de rânduripotrivind fiecare rând al primului tabel cu fiecare rând al celui de-al doilea tabel.
  • Unirea de sine - Aceastaeste folosit pentru a uni aceeași masă cu sine. Pentru a utiliza Self Join, trebuie să creăm nume de alias diferite pentru același tabel pentru a efectua operațiuni pe baza cerințelor noastre.

Conceptul este similar cu cel al altor sisteme de baze de date relaționale, cum ar fi SQL. Deci, pentru a afla mai multe, puteți consulta acest articol .

Cu aceasta, am acoperit comenzile SQLite de bază. Conceptele avansate nu sunt acoperite aici. Așadar, rămâneți la curent cu un alt articol despre concepte SQLite avansate. Chiar și cu toate caracteristicile bune pe care SQLite le poate oferi, are și anumite dezavantaje.

Tutorial SQLite: Dezavantaje ale SQLite

Mai jos sunt enumerate dezavantajele utilizării SQLite:

  • Nu funcționează bine în Arhitectura client / server.
  • O dimensiune a bazei de date SQLite este limitată la 2 GB în majoritatea cazurilor.
  • SQLite nu a implementat RIGHT OUTER JOIN și FULL OUTER JOIN. Cu SQLite, putem implementa LEFT OUTER JOIN doar.
  • Vizualizările în SQLite sunt numai în citire. Nu putem folosi instrucțiuni DML (Insert, Update și Delete) cu Views.
  • Nu putem folosi instrucțiunile GRANT și REVOKE cu SQLite.

Cu aceasta, ajungem la sfârșitul acestui tutorial SQLite.

Dacă doriți să aflați mai multe despre MySQL și cunoașteți această bază de date relațională open-source, apoi consultați-ne care vine cu instruire live condusă de instructor și experiență în viața reală a proiectului. Această instruire vă va ajuta să înțelegeți în profunzime MySQL și vă va ajuta să obțineți stăpânire asupra subiectului.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui tutorial SQLite și vă voi răspunde.