Tutorial SQLite: tot el que heu de saber



Aquest tutorial de sqlite us ajudarà a comprendre com sqlite és diferent d'altres sistemes de bases de dades relacionals i de totes les ordres bàsiques

Si heu treballat amb sistemes de bases de dades relacionals, és probable que hagueu sentit a parlar de sistemes de bases de dades populars com ara MySQL , Servidor o PostgreSQL . SQLite és un altre SGBDR extremadament útil que és molt senzill de configurar i operar. A més, té moltes funcions diferents sobre altres bases de dades relacionals. Aquest tutorial SQLite ensenya conceptes bàsics que heu de conèixer amb l'ajut de pràctiques pràctiques extenses.

Els temes tractats en aquest article són:





Tutorial SQLite: Què és SQLite?

Aquí teniu la definició estàndard de la indústria de SQLite:

SQLite és un motor de base de dades relacional de transaccions de codi obert, de configuració zero, autònom, autònom, dissenyat per ser incrustat en una aplicació.

Pots considerar-ho SQLite com un ' més lleuger ”Versió d’altres RDBMS complexos (Oracle, , etc.), on està configurat el motor de base de dades processament independent (biblioteca en procés) és a dir, a sense servidor, autònom, de configuració zero i transaccional . És coneguda per la seva portabilitat, fiabilitat i alt rendiment fins i tot en entorns amb poca memòria. A més, SQLite és una opció popular com a base de dades incrustada per a emmagatzematge local / client en programes o aplicacions finals, a diferència d'altres RDBMS, on es configura el motor de base de dades client-servidor.



Característiques de SQLite

SQLite ofereix moltes funcions diferents, com ara:

  • Sense servidor: La majoria Bases de dades SQL s’implementen com un procés de servidor independent, però SQLite no té un procés de servidor separat. És un motor de base de dades sense servidor. Llegeix i escriu directament a fitxers de disc normals.
  • Configuració zero: Aixòno requereix cap configuració per executar-la. Això significa que no hi ha cap procés de servidor que calgui iniciar, aturar o configurar com en un sistema client / servidor.
  • Tipus de manifest: SQLite utilitza l’escriptura de manifest, que permet emmagatzemar qualsevol quantitat de qualsevol tipus de dades a qualsevol columna sense importar el tipus de dades declarat de la columna. Tingueu en compte que hi ha algunes excepcions a aquesta regla.
  • Lleuger: Com el seu nom indica, la biblioteca SQLite és molt lleugera. La cosa és que, tot i que l’espai que utilitza varia en funció del sistema on s’instal·li, pot ocupar menys de 600 KB d’espai.
  • Portàtil: A diferència d'altres SGBD, untota la base de dades SQLite s'emmagatzema en un sol fitxer.Aquest fitxer es pot compartir a través de suports extraïbles o protocol de transferència de fitxers molt fàcilment.
  • Elecció diversa: Molts llenguatges de programació proporcionen enllaços per SQLite, inclòs , , C # , , , Rubí , , i molts més.
  • Gratuït: SQLite és gratuït i de codi obert. Per treballar amb SQLite no és necessària una llicència comercial.

Tal com es mostra a SQLiteés conegut per la seva configuració zero, cosa que significa que no es requereix cap configuració ni administració complexes. A la següent part d’aquest tutorial de SQLite, vegem com instal·lar SQLite al vostre sistema.

Tutorial SQLite: instal·lar SQLite al Windows

Els passos a seguir són:



Pas 1: Aneu al SQLite oficial al lloc web i feu clic a l’enllaç adequat per descarregar-lobinaris precompilats.

java diferència entre hashmap i hashtable

Pas 2: Descarregueu el fitxer zip de línia d'ordres SQLite (aquí: sqlite-tools-win32-x86-3270200.zip) i amplieu aquests fitxers a la carpeta que trieu.

Aquesta eina de línia d'ordres SQLite contindrà els productes SQLite següents

  • Nucli SQLite : El nucli SQLite conté el motor de base de dades real i l'API pública.
  • Eina de línia d'ordres SQLite3 : L'aplicació sqlite3 és una eina de línia d'ordres que es construeix a sobre del nucli SQLite.
  • Extensió Tcl : Aquesta biblioteca és essencialment una còpia del nucli SQLite amb els enllaços Tcl adherits.
  • Eina analitzadora SQLite : L'eina analitzadora SQLite s'utilitza per analitzar fitxers de bases de dades.

Pas 3: Després d’això, iniciar la línia d’ordres SQLite és tan senzill com fer clic a l’aplicació sqlite3, cosa que farà que aparegui la línia d’ordres.

Si voleu provar més, simplement escriviu .ajudar ordre de sqlite> pregunteu per veure totes les ordres disponibles a sqlite3 com es mostra a continuació.

Nota: Per defecte, una sessió SQLite utilitza la base de dades en memòria, per tant, tots els canvis desapareixeran quan finalitzi la sessió.

És prou senzill, oi? A continuació, comencem amb les ordres SQLite.

Tutorial SQLite: ordres SQLite

Aquesta secció del tutorial SQLite presenta sentències SQL bàsiques que podeu utilitzar amb SQLite.

Nota: Les ordres SQLite acaben amb punt i coma (). Indica a SQLite que la vostra comanda està completa i que s'hauria d'executar.A més, podeu estendre l'ordre a diverses línies i utilitzar els punts i coma a l'última línia.

Ordres de base de dades

Aquesta secció consta d'aquestes ordres, mitjançant les quals podeu gestionar la vostra base de dades. Les ordres són:

  • SQLite Crea una base de dades

SQLite no utilitza la sentència CREATE DATABASE com en altres sistemes de gestió de bases de dades relacionals, com ara MySQL , SQL Server, etc. Per crear una nova base de dades a SQLite, simplement introduïu sqlite3 seguit del nom del fitxer que voleu utilitzar per a la base de dades. TEl següent codi crea un fitxer de base de dades anomenat StudentDetails.db:

Exemple

sqlite3 StudentDetails.db sqlite> .databases main: D: sqliteStudentDetails.db
  • Base de dades adjunta SQLite

Quan disposeu de diverses bases de dades, només en podeu fer servir una a la vegada. A SQLite, la sentència ATTACH DATABASE s’utilitza per adjuntar una base de dades particular per a la connexió actual. Adesprés d'aquesta ordre, totes les sentències SQLite s'executaran a la base de dades adjunta.

Exemple

sqlite> ATTACH DATABASE 'DepartmentDetails.db' AS 'Department' sqlite> .databases main: D: sqliteStudentDetails.db Department: D: sqliteDepartmentDetails.db
  • Base de dades de separació SQLite

A SQLite, la sentència DETACH DATABASE s’utilitza per separar la base de dades anomenada àlies d’una connexió de base de dades que anteriorment s’havia adjuntat mitjançant la sentència ATTACH. Si s'ha adjuntat el mateix fitxer de base de dades amb diversos àlies, aquesta ordre desconnectarà només el nom donat i la resta de fitxers adjunts continuaran existint.Les bases de dades de la base de dades temporal o en memòria es destruiran completament i es perdrà el contingut.

Exemple

sqlite> .databases principal: D: sqliteStudentDetails.db Departament: D: sqliteDepartmentDetails.db Estudiant: D: sqliteStudentDetails.db DeptInformation: D: sqliteDepartmentDetails.db sqlite> DETACH DATABASE 'Department' sqlite> sqlite> .dat. Estudiant: D: sqliteStudentDetails.db Informació del departament: D: sqliteDepartmentDetails.db

Ordres de taula

Aquí aprendrem com tractar les taules quan s’utilitza SQLite.

  • Taula de creació SQL

A SQLite, la sentència CREATE TABLE s’utilitza per crear una taula nova. Mentre creeu la taula, heu de posar un nom a la taula i definir-ne la columna i els tipus de dades de cada columna.

Sintaxi:

CREA TABELLA nom_tabla (columna1 tipus_columna [restriccions] columna2 tipus_colonna [restriccions] [.....])

Exemple

CREA LA TAULA StudentInfo (ID INT CLAU PRIMÀRIA NO NULA, NOM TEXT NO NULLA, EDAT INT NO NULA, ADREÇA CÀRREC (50), INTEGRE DEPARTMENTID NO NULA, TELEFON DE TELEFONIA PER defecte 'DESCONEGUT', REFERÈNCIES DE CLAU EXTERIOR (DEPARTMENTID) DepartmentInfo (DeptID))

Podeu comprovar si la taula es va crear o no mitjançant el fitxer .taules com es mostra a continuació. Tingueu en compte que ja he creat una taula anomenada DepartmentInfo on DeptID és la clau principal.La taula Departaments té una restricció de clau estrangera a la taula Estudiants.

sqlite> .tables Contactes de StudentInfo Emp_Master
  • Taula SQLite Drop

A SQLite, la sentència DROP TABLE us permet eliminar o eliminar una taula de la base de dades SQLite. Un cop eliminada la taula, totes les dades que conté s’eliminen definitivament de la base de dades. També s’eliminen els índexs i activadors associats. Si hi ha alguna restricció de clau externa habilitada en aquesta taula, això s'eliminarà de manera equivalent per a cada fila de la taula i també es retiraran els activadors associats a la taula.

Sintaxi

TAULA DE GOTA [SI EXISTEIX] nom_tabla

Exemple

DROP TABLE Error del departament: no hi ha cap taula: Department DROP TABLE Empresa sqlite> .tables StudentInfo

Nota: SI EXISTEIX, és una clàusula opcional. Si s’especifica, la sentència DROP TABLE no generarà cap error si no existeix una de les taules.

A més, hi ha un Instrucció SQLite Alter Table , que entendrem en les properes seccions d’aquest article. Ara que hem creat una taula, comprovem com inserir, suprimir i modificar les dades.

Tutorial SQLite: Operacions CRUD

  • Consulta d'inserció SQLite

Després de crear la taula, es pot utilitzar l'ordre SQLite Insert Into per crear files noves a la taula especificada. Hi ha dues formes significatives de la instrucció insert SQLite. El primer formulari utilitza una clàusula VALUES per especificar una llista de valors que cal inserir.

Sintaxi

INSERTI A TABLE_NAME [(columna1, columna2, columna3, ... columnaN)] VALORS (valor1, valor2, valor3, ... valorN)

Exemple

INSERTAR A VALORS DE StudentInfo (DNI, NOM, EDAT, ADREÇA, DEPARTMENTID, TELÈFON) (1, 'Dean', 20, 'Califòrnia', 2, '934 *******')

Sortida

SELECCIONA * de StudentInfo ID NOM EDAT ADREÇA DEPARTAMENT TELÈFON ---------- ---------- ---------- ---------- ---------- ---------- 1 Dean 20 Califòrnia 2 934 *******

Aquí es crea una única fila nova i cada valor es registra a la seva respectiva columna. Tingueu en compte que les dues llistes han de tenir el fitxer mateix nombre d’elements. Aquí, el llista de les columnes és opcional. També podem inserir dades a la taula sense especificar la llista de columnes .

Exemple

INSERIU A VALORS StudentInfo (2, 'SAM', 22, 'Texas', 2, '976 *******')

Sortida

SELECCIONA * de StudentInfo ID NOM EDAT ADREÇA DEPARTAMENT TELÈFON ---------- ---------- ---------- ---------- ---------- ---------- 1 Dean 20 Califòrnia 2 934 ******* 2 SAM 22 Texas 2 976 *******

SQLite també ofereix una funció per inseriu diverses files en una sola instrucció INSERT. La sintaxi és la que es mostra a continuació.

Exemple

INSERTI A VALORS StudentInfo (3, 'John', 23, 'Noruega', 1, '923 *******'), (4, 'Mitch', 22, 'Houston', 3, '934 ** ***** ')

Sortida

Seleccioneu * de StudentInfo 1 | Dean | 20 | Califòrnia | 2 | 934 ******* 2 | SAM | 22 | Texas | 2 | 976 ******* 3 | John | 23 | Noruega | 1 | 923 ******* 4 | Mitch | 22 | Houston | 3 | 934 *******

Com podeu veure, el format de la sortida no és gaire semblant a l’anterior. Llavors, com canvieu el format de sortida a SQLite? Formatem la sortida perquè els nostres resultats siguin una mica més fàcils de llegir.

  • Formant

Podeu utilitzar .mode per canviar el mode de sortida. S'utilitza l'exemple anterior .mode llista, que mostra els resultats com una llista. També podeu utilitzar .encapçalaments instrucció per especificar si es mostren o no les capçaleres de columna. Un cop fets els canvis, podeu veure la configuració mitjançant .espectacle comandament.

Exemple

sqlite> .mode 'column' sqlite> .headers on sqlite> .show echo: off eqp: off explain: auto headers: on mode: column nullvalue: '' output: stdout colseparator: '|' rowseparator: 'n' stats: off width: nom del fitxer: StudentDetails.db

Sortida

SELECCIÓ * DE L'identificador StudentInfo NOM EDAT ADREÇA DEPARTAMENT TELÈFON ---------- ---------- ---------- ---------- ---------- ---------- 1 Degà 20 Califòrnia 2 934 ******* 2 SAM 22 Texas 2 976 ******* 3 Joan 23 Noruega 1 923 ******* 4 Mitch 22 Houston 3. 934 *******
  • SQLite Consulta de selecció

A SQLite s’utilitza la sentència Selectper obtenir dades d'una taula, que retorna les dades en forma de taula de resultats. Aquestes taules de resultats també s’anomenen resultat conjunts. Mitjançant la declaració SQLite select podem realitzar càlculs senzills o expressions múltiples en funció dels nostres requisits.Ja hem utilitzat una declaració SELECT quan vam inserir dades.

Sintaxi

SELECCIONA [TOT | DISTINCT] resultat [FROM table-list] [WHERE expr]
  • DISTINGUT - Quan fem servir paraules clau diferents en una sentència select, només retorna files de dades diferents.
  • TOTS - Si fem servir TOTES les paraules clau en una declaració select, torna totes les files de dades encara que estiguin duplicades.
  • DES DE la llista de taules - És una llista de taules de les quals voleu obtenir dades.
  • Expressió ON - L'expressió WHERE s'utilitza per definir les nostres condicions personalitzades per obtenir les dades necessàries de les taules.

Exemple 1

què és el procediment en sql
SELECCIÓ ID, NOM DE StudentInfo ON EDAT<21

Sortida

ID NOM ---------- ---------- 1 Degà

Exemple2

Seleccioneu NOM DE StudentInfo WHERE DEPARTMENTID = (SELECCIÓ DeptID FROM DepartmentInfo WHERE DeptName = 'Psicologia')

Sortida

// busca persones del departament l'identificador de les quals és 2 NOM ---------- Dean SAM
  • Consulta d'actualització SQLite

A SQLite, la sentència UPDATE es pot utilitzar per modificar els registres existents en una taula.La clàusula WHERE de SQLite es pot utilitzar per especificar exactament quines files s'han d'actualitzar. Podeu actualitzar fàcilment totes les files, algunes files o cap, segons les condicions de filtratge aplicades per la clàusula WHERE.

Sintaxi

ACTUALITZACIÓ nom_tabla SET columna1 = valor1, columna2 = valor2 ...., columnaN = valorN ON [condició]

Exemple

ACTUALITZACIÓ StudentInfo SET DEPARTMENTID = 4 WHERE ID = '2'

Sortida

SELECCIÓ * DE L'identificador StudentInfo NOM EDAT ADREÇA TELÈFON DEPARTAMENTAL ---------- ---------- ---------- ---------- ------------ ---------- 1 Dean 20 Califòrnia 2 934 ******* 2 SAM 22 Texas 4 976 ******* 3 John 23 Noruega 1 923 ******* 4 Mitch 22 Houston 3. 934 *******
  • Consulta d'esborrar SQLite

A SQLite, la sentència DELETE es pot utilitzar per suprimir el registre de la taula. Podeu suprimir fàcilment totes les files, algunes files o cap, segons les condicions de filtratge aplicades per la clàusula WHERE.

Exemple

ELIMINA DE DepartmentInfo ON DeptName = 'Ciència'

Sortida

SELECCIÓ * DE DepartmentInfo DeptID DeptName ---------- ----------- 1 Matemàtiques 2 Psicologia 3 Esports 4 Música

Si intenteu suprimir un registre al qual fa referència una clau estrangera, obtindreu un error. Abans de suprimir el registre de clau principal, haureu de suprimir els registres de claus externes. Intentem eliminar els departaments de ciències.

Exemple

ELIMINA DE DepartmentInfo WHERE DeptName = Error 'Música': ha fallat la restricció FOREIGN KEY

Per tant, hem de suprimir els registres de claus externes abans de suprimir la clau principal.

ELIMINA DE StudentInfo WHERE DEPARTMENTID = 4 sqlite> ELIMINA DE DepartmentInfo WHERE DeptName = 'Music' sqlite> SELECT * FROM DepartmentInfo DeptID DeptName ---------- ----------- 1 Matemàtiques 2 Psicologia 3 Esports SELECCIONA * DE ID de StudentInfo NOM EDAT ADREÇA DEPARTAMENT TELÈFON ---------- ---------- ---------- ------- --- ------------ ---------- 1 Dean 20 Califòrnia 2 934 ******* 3 Joan 23 Noruega 1 923 ****** * 4 Mitch 22 Houston 3 934 *******

Ara ja sabeu com editar els registres de la taula de base de dades SQLite. Per avançar més en aquest bloc de tutoria SQLite, anem a discutir diferents clàusules i condicions que es troben amb més freqüència a SQLite.

Clàusules / Condicions SQLite

Abans de començar amb les clàusules, aquí teniu la sintaxi completa de la sentència SELECT a SQLite.

Sintaxi

SELECCIONA [TOT | DISTINCT] resultat [FROM table-list] [WHERE expr] [GROUP BY expr-list] [HAVING expr] [compost-op select] * [ORDER BY sort-expr-list] [LIMIT enter [[OFFSET |,) enter ]]

Nota: He actualitzat les taules StudentInfo i DepartmentInfo com es mostra a continuació.

// Identificador de la taula dels estudiants NOM EDAT ADREÇA TELÈFON DEPARTAMENTAL ---------- ---------- ---------- ---------- ------------ ---------- 1 Dean 20 Califòrnia 2 934 ******* 3 John 23 Noruega 1 923 ******* 4 Mitch 22 Houston 3 934 ******* 2 SAM 22 Texas 4 976 ******* 5 Johny 23 Noruega 2 945 ******* 6 Robin 23 Noruega 2 DESCONEGUT // Detalls del departament DeptID DeptName - --------- ----------- 1 Matemàtiques 2 Psicologia 3 Esports 4 Música 5 Ciències
  • SQLite ON

A SQLite, la clàusula WHERE s’utilitza per imposar restriccions a la sentència SELECT definint una o més condicions per obtenir les dades necessàries de les taules de la base de dades.Si la condició especificada és satisfactòria o cert, retorna un valor específic de la taula. Com heu vist abans, la clàusula WHERE no només s'utilitza a la sentència SELECT, sinó que també s'utilitza a la sentència UPDATE, DELETE, etc.

Exemple

SELECCIÓ DEL NOM DE StudentInfo ON EDAT = 23NOM ---------- John Johny Robin

A SQLite, hi ha diversos operadors relacionals que es poden utilitzar amb la clàusula WHERE.

  • SQLite GRUP PER

A SQLite, la clàusula GROUP BY s’utilitza per agrupar dades en una sola fila on es repeteix el valor d’una o més columnes especificades. Aquesta clàusula s'utilitza amb la clàusula WHERE a la sentència SELECT i precedeix la clàusula ORDER BY.

Sintaxi

SELECCIONA el resultat DE [llista-taules] GRUP PER [llista-expr]
SELECCIONA NOM, ADREÇA DE StudentInfo GRUP PER NOM NOM ADREÇA ---------- ---------- Dean Califòrnia John Noruega Johny Noruega Mitch Houston Robin Noruega SAM Texas

Fixeu-vos que el procés d’agrupació té dos passos. En primer lloc, l’expressió GROUP BY s’utilitza per organitzar les files de la taula en diferents grups. Un cop definits els grups, la sentència SELECT defineix com es aplaten aquests grups en una sola fila.

  • SQLite ORDRE BY

Generalment, les taules SQLite emmagatzemen les dades en un ordre no especificat i retornaran registres en el mateix ordre no especificat mentre s’obtenen dades mitjançant la sentència SQLite select. En aquests casos, podeu utilitzar la clàusula ORDER BY que s’utilitza per ordenar els registres de columnes en ordre ascendent o descendent. A l'exemple següent, he agrupat i ordenat 9 en ordre descendent) les dades segons l'adreça.

Sintaxi

SELECCIONA expressions de la llista de taules [condicions ON] ORDRE PER columna1, columna2, ... [ASC | DESC]

Exemple

SELECCIONA ADRECA, COMPTE (ADREÇA) DE StudentInfo GRUP PER ADREÇA ORDRE PER ADREÇA DESC ADREÇA COMPTE (ADREÇA) ---------- -------------- Texas 1 Noruega 3 Houston 1 Califòrnia 1
  • SQLite HA VINGUT

A SQLite, el fitxer TENIR és idèntica a ON clàusula. La clàusula HAVING és una condició addicional que s’aplica després de l’agregació juntament amb el grup by a la sentència select. Generalment a SQLite, ON La clàusula s'utilitza per aplicar una condició a elements individuals d'una taula iel TENIR La clàusula s'utilitza per afegir condicions de filtre basades en els grups creats per la clàusula Group By.

Exemple

SELECCIÓ D'ADREÇA, COMPTE (ADREÇA) DEL GRUP StudentInfo PER ADREÇA QUE TÉ UN COMPTE (*)> 1 COMPTE D'ADRESSES (ADREÇA) ---------- -------------- Noruega 3
  • Clàusula límit SQLite

A SQLite, la clàusula LIMIT s’utilitza per establir un límit als registres retornats per la sentència select. Considerem un exemple per entendre el concepte.

Sintaxi

SELECCIONA expressions de la llista de taules [condicions WHERE] LIMIT number_rows OFFSET offset_value

Exemple

SELECCIONA NOM, ADREÇA DE StudentInfo LÍMIT 4 OFFSET 2 NOM ADREÇA ---------- ---------- Mitch Houston SAM Texas Johny Noruega Robin Noruega

COMPENSACIÓés opcional i defineix quantes files es poden ometre al començament del conjunt de resultats en funció de valor_deplaçament .

  • SQLite I & OR

A SQLite, els operadors AND & OR s’utilitzen per realitzar múltiples condicions sobre sentències de selecció, inserció, actualització i eliminació segons els nostres requisits. L'operador SQLite AND retornarà files o registres que compleixin les condicions definides mitjançant l'operador AND.

Exemple 1

SELECCIÓ DEL NOM DE StudentInfo WHERE EDAT = 22 I ADRESSA = 'Texas' NOM ---------- SAM

La condició OR s'utilitza per definir diverses condicions a les sentències SQLite i retornarà files o registres de la sentència si es compleix alguna condició.

Exemple2

SELECCIONA EL NOM DE StudentInfo WHERE (AGE = 22 AND ADDRESS = 'Norway') O ADDRESS = 'Norway' NOM ---------- John Johny Robin
  • Operador SQLite GLOB

A SQLite, l’operador GLOB s’utilitza per comprovar si el valor de cadena donat coincideix o no amb un patró específic. En cas que el valor de la cadena coincideixi amb el valor del patró, tornarà cert i és similar a l’operador LIKE. A més, GLOB ho és cas delicat.

Sintaxi

SELECCIONA * FROM nom_tabla ON nom_columna GLOB 'expressió-cerca'

Exemple

ordenació d'algorisme c ++
SELECCIÓ * DE StudentInfo ON NOM GLOBAL 'Joh *' ID NOM EDAT ADREÇA DEPARTAMENT TELÈFON ---------- ---------- ---------- --- ------- ------------ ---------- 3 John 23 Noruega 1 923 ******* 5 Johny 23 Noruega 2 945 ** *****
  • SQLite Distinct

A SQLite, la paraula clau DISTINCT escanejarà el conjunt de resultats de la sentència SELECT i eliminarà les files duplicades. A més, els valors NULL es consideren duplicats, de manera que si fem servir la clàusula DISTINCT amb una columna que té valors NULL, només mantindrà una fila d’un valor NULL. Quan apliqueu DISTINCT per a diverses columnes, la sentència retorna cada combinació única de coulnm1 i column2.

Exemple

SELECCIONA L’EDAT DISTINCTA DE L’EDAT de StudentInfo ---------- 20 23 22
  • Operador SQLite IN

A SQLite, l'operador IN s'utilitza per determinar si el valor donat coincideix amb una llista de valors donats o amb el resultat retornat per la subconsulta.

Exemple

SELECCIONA EL NOM DE StudentInfo ON ADREÇA ('Texas', 'Houston') NOM ---------- Mitch SAM
  • SQLite UNION & UNION ALL

A SQLite, l'operador UNION s'utilitza per combinar els conjunts de resultats de 2 o més sentències SELECT i elimina les files duplicades entre les diverses sentències SELECT. Recordeu que les sentències SELECT que hem utilitzat amb l'operador UNION han de tenir el mateix nombre de camps en els conjunts de resultats amb tipus de dades similars.

Sintaxi

SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION / UNION ALL SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions]

Exemple

SELECCIÓ DEPARTMENTID DE StudentInfo UNION SELECCIÓ DeptId DE DepartmentInfo ORDRE PER DEPARTMENTID ASC DEPARTMENTID ------------ 1 2 3 4 5

L'operador UNION ALL s'utilitza per combinar els conjunts de resultats de 2 o més sentències SELECT i retornarà totes les files, inclosos els duplicats.

Exemple

SELECCIÓ DEPARTMENTID DE StudentInfo UNION TOTS SELECCIONA DeptId DE DepartmentInfo ORDRE PER DEPARTMENTID ASC DEPARTMENTID ------------ 1 1 2 2 2 2 3 3 4 4 5

Amb això, hem cobert les ordres més bàsiques que podríeu haver d’utilitzar quan treballeu amb SQLite. Per continuar amb aquest tutorial de SQLite, comprovem la sentència join de SQLite.

Uneix-se a SQLite

A SQLite, els Joins sóns'utilitza per combinar registres de dues o més taules d'una base de dades i obtenir registres segons els nostres requisits. DEls diferents tipus de JOINS disponibles a SQLite són:

  • Combinació interna -INNER JOIN s’utilitza per combinar i retornar només registres coincidents de diverses taules en funció de les condicions definides a les sentències SQLite.
  • Unió exterior -SQLite Outer Join seleccionarà files coincidents de diverses taules igual que Combinació interna i algunes altres files fora de la relació.En termes simples, podem dir SQLiteUNEIX-TE A EXTERIORés un afegit deCOMBINACIÓ INTERNA . Generalment, tenim tres tipus de combinacions externes a l’estàndard SQL: les combinacions externes ESQUERRA, DRETA i COMPLETA, però SQLite només admet LEIN OUTER JOIN.
  • Unió creuada -S'utilitza per obtenir el producte cartesià de filesfent coincidir cada fila de la primera taula amb cada fila de la segona taula.
  • Unió personal - Éss’utilitza per unir la mateixa taula amb ella mateixa. Per utilitzar Self Join, hem de crear diferents noms d’àlies per a la mateixa taula per realitzar operacions segons els nostres requisits.

El concepte és similar al d'altres sistemes de bases de dades relacionals com SQL. Per tant, per obtenir més informació, podeu consultar aquest article a .

Amb això, hem cobert les ordres bàsiques de SQLite. Els conceptes avançats no es tracten aquí. Per tant, estigueu atents a un altre article sobre conceptes SQLite avançats. Fins i tot amb totes les bones característiques que SQLite pot oferir, també té certs desavantatges.

Tutorial SQLite: Desavantatges de SQLite

A continuació s’enumeren els desavantatges d’utilitzar SQLite:

  • No funciona bé a l'arquitectura client / servidor.
  • Una mida de base de dades SQLite es limita a 2 GB en la majoria dels casos.
  • SQLite no ha implementat RIGHT OUTER JOIN i FULL OUTER JOIN. Amb SQLite, només podem implementar LEFT OUTER JOIN.
  • Les vistes a SQLite són de només lectura. No podem utilitzar instruccions DML (Insereix, actualitza i suprimeix) amb Views.
  • No podem utilitzar instruccions GRANT i REVOKE amb SQLite.

Amb això, arribem al final d’aquest tutorial SQLite.

Si voleu obtenir més informació MySQL i conegueu aquesta base de dades relacional de codi obert i, a continuació, consulteu la nostra que inclou formació en directe dirigida per un instructor i experiència en projectes reals. Aquesta formació us ajudarà a entendre en profunditat MySQL i us ajudarà a dominar el tema.

Tens alguna pregunta? Si us plau, mencioneu-lo a la secció de comentaris d’aquest tutorial de SQLite i us respondré.