SQLite Baza podataka: Kako stvoriti, otvoriti, sigurnosno kopirati i ispustiti datoteke

โšก Pametni saลพetak

SQLite Baze podataka pohranjuju cijeli skup podataka unutar jedne lagane datoteke, ne zahtijevajuฤ‡i posluลพitelj, instalaciju ili konfiguraciju. Alat naredbenog retka sqlite3 stvara, otvara, popunjava, izraฤ‘uje sigurnosne kopije i uklanja ove datoteke baze podataka izravno iz jednostavne terminalne sesije.

  • ๐Ÿ—„๏ธ Nema naredbe CREATE DATABASE: SQLite nema naredbu CREATE DATABASE; izvoฤ‘enje sqlite3 SchoolDB.db automatski stvara datoteku.
  • ๐Ÿ“‚ Specifiฤna lokacija: Naredba .open stvara ili otvara bazu podataka na bilo kojoj putanji koju navedete.
  • ๐Ÿงฑ Shema iz datoteke: Piping .sql datoteka u sqlite3 gradi novu bazu podataka koja je veฤ‡ popunjena svojim tablicama.
  • ๐Ÿ’พ Sigurnosna kopija: Naredba .backup kopira otvorenu bazu podataka u novu datoteku radi sigurnog ฤuvanja.ping.
  • ๐Ÿ—‘๏ธ Ispustitiping baza podataka: SQLite nema naredbu DROP DATABASE; brisanjem datoteke baze podataka ona se u potpunosti uklanja.
  • ๐Ÿค– AI pomoฤ‡: GitHub Copilot i alati za pretvaranje teksta u SQL generiraju SQLite sheme i upiti iz jednostavnih engleskih uputa.

SQLite Baza podataka

SQLite baze podataka su vrlo lagane. Za razliku od drugih sustava baza podataka, nije potrebna konfiguracija ili instalacija za poฤetak rada na SQLite baza podataka. Sve ลกto vam treba je SQLite biblioteka, koja je manja od 500 KB, tako da moลพete poฤeti raditi s SQLite baze podataka i tablice izravno.

SQLite STVARATI bazu podataka

Za razliku od drugih sustava za upravljanje bazama podataka, ne postoji naredba CREATE DATABASE u SQLiteEvo kako moลพete stvoriti novu bazu podataka:

  • Otvorite Windows Alat za naredbeni redak (cmd.exe) iz izbornika Start upiลกite "cmd" i otvorite ga.
  • Prozor cmd otvorit ฤ‡e se u zadanoj korisniฤkoj mapi. Na mom raฤunalu to je "C:\Users\MGA":

SQLite naredbeni redak otvoren u zadanoj korisniฤkoj mapi C:/Users/MGA

  • Iz vodiฤa za instalaciju i pakete, sada ste trebali stvoriti SQLite mapu u direktoriju "C" i u nju kopirao datoteku sqlite3.exe.
  • Zatim idite do mjesta gdje se nalazi sqlite3.exe koristeฤ‡i sljedeฤ‡e SQLite naredbeni redak:

Navigacija do mape sqlite3.exe u Windows naredbenog retka

Slijedi osnovna sintaksa naredbe sqlite3 za stvaranje baze podataka:

sqlite3 SchoolDB.db

Ovim ฤ‡e se stvoriti nova baza podataka pod nazivom โ€žSchoolDB.dbโ€œ u istom direktoriju u koji ste kopirali .exe datoteku.

Ako odete u direktorij โ€žc:\sqliteโ€œ, vidjet ฤ‡ete da je kreirana datoteka โ€žSchoolDB.dbโ€œ, kao na sljedeฤ‡oj snimci zaslona:

Pokretanje naredbe sqlite3 SchoolDB.db za stvaranje baze podataka

Datoteka baze podataka SchoolDB.db stvorena u direktoriju c:/sqlite

Moลพete potvrditi da je baza podataka kreirana tako da napiลกete sljedeฤ‡e SQLite naredba:

.databases

Ovo vam daje popis stvorenih baza podataka i trebali biste tamo vidjeti novu bazu podataka โ€žSchoolDB.dbโ€œ:

Naredba .databases koja navodi novokreiranu SchoolDB bazu podataka

SQLite STVARAJTE bazu podataka na odreฤ‘enoj lokaciji koristeฤ‡i Open

Ako ลพelite stvoriti datoteku baze podataka na odreฤ‘enoj lokaciji, a ne u mapi u kojoj se nalazi sqlite3.exe, evo kako otvoriti SQLite datoteka baze podataka:

  • Ruฤno se idite do mape u kojoj se nalazi sqlite3.exe, "C:\sqlite".
  • Double-kliknite sqlite3.exe da biste otvorili SQLite komandna linija.
  • Naredba za otvaranje datoteke baze podataka je:

Otvaranje SQLite datoteku baze podataka na odreฤ‘enoj lokaciji pomoฤ‡u naredbe .open

.open c:/users/mga/desktop/SchoolDB.db

Ovim se stvara baza podataka โ€žSchoolDB.dbโ€œ i datoteka se pohranjuje na odreฤ‘enu lokaciju. Ista naredba takoฤ‘er otvara postojeฤ‡u bazu podataka, pa ponovno pokretanje jednostavno ponovno otvara tu bazu podataka:

.open c:/users/mga/desktop/SchoolDB.db

SQLite provjerava postoji li "SchoolDB.db" na toj lokaciji. Ako postoji, SQLite otvara je; u suprotnom se stvara nova baza podataka s tim nazivom datoteke.

SQLite stvoriti bazu podataka i popuniti je tablicama iz datoteke

Ako imate .SQL datoteku koja sadrลพi shemu tablice i ลพelite stvoriti novu bazu podataka s istim tablicama, sljedeฤ‡i primjer objaลกnjava kako to uฤiniti.

Primjer:

Ovdje stvaramo primjer baze podataka koja se koristi u ovom SQLite tutorijal pod nazivom "SQLiteTutorialsDBโ€ i popunite ga tablicama na sljedeฤ‡i naฤin:

  • Otvorite tekstualnu datoteku i zalijepite sljedeฤ‡e SQLite naredbe u njega:
CREATE TABLE [Departments] ( 
	[DepartmentId] INTEGER  NOT NULL PRIMARY KEY, 
	[DepartmentName] NVARCHAR(50)  NOT NULL  
); 
CREATE TABLE [Students] (  
	[StudentId] INTEGER  PRIMARY KEY NOT NULL,
	[StudentName] NVARCHAR(50) NOT NULL, 
	[DepartmentId] INTEGER  NULL,   
	[DateOfBirth] DATE  NULL  
);     
CREATE TABLE [Subjects] (  
	[SubjectId] INTEGER  NOT NULL PRIMARY KEY,  
	[SubjectName] NVARCHAR(50)  NOT NULL  
); 
CREATE TABLE [Marks] (  
	[StudentId] INTEGER  NOT NULL,  
	[SubjectId] INTEGER  NOT NULL,  
	[Mark] INTEGER  NULL  
);

Gornji kod stvara ฤetiri tablice, kako slijedi:

  • Tablica โ€žOdjeliโ€œ sa sljedeฤ‡im stupcima:
    • โ€žDepartmentIdโ€œ, cjelobrojni ID odjela, deklariran kao PRIMARNI KLJUฤŒ.
    • โ€žNazivOdjelaโ€œ, naziv odjela u obliku niza znakova koji ne dopuลกta null vrijednosti (NOT NULL).
  • Tablica โ€žStudentiโ€œ sa sljedeฤ‡im stupcima:
    • โ€žStudentIdโ€œ, cijeli broj deklariran kao PRIMARNI KLJUฤŒ.
    • โ€žImeStudentaโ€œ, ime studenta, koje ne dopuลกta null vrijednost.
    • โ€žIdOdjelaโ€œ, cijeli broj koji se odnosi na ID odjela u tablici Odjeli.
    • โ€žDatumRoฤ‘enjaโ€œ, datum roฤ‘enja uฤenika.
  • Tablica โ€žPredmetiโ€œ sa sljedeฤ‡im stupcima:
    • โ€žSubjectIdโ€œ, cijeli broj deklariran kao PRIMARNI KLJUฤŒ.
    • โ€žSubjectNameโ€œ, niz vrijednosti koji ne dopuลกta null vrijednosti.
  • Tablica โ€žOcjeneโ€œ sa sljedeฤ‡im stupcima:
    • โ€žStudentIdโ€œ, cijeli broj koji oznaฤava studentski ID.
    • โ€žSubjectIdโ€œ, cijeli broj koji oznaฤava ID subjekta.
    • โ€žOcjenaโ€œ, ocjena koju student dobiva iz predmeta, cijeli broj koji dopuลกta null vrijednosti.
  • Spremi datoteku kao "SQLiteTutorialsDB.sqlโ€ na istoj lokaciji kao i sqlite3.exe.
  • Otvorite cmd.exe i idite do direktorija u kojem se nalazi sqlite3.exe.
  • Napiลกite sljedeฤ‡u naredbu:
sqlite3 SQLiteTutorialsDB.db < SQLiteTutorialsDB.sql

Nova baza podataka "SQLiteTutorialsDBโ€ je kreirana, a datoteka โ€œSQLiteDatoteka TutorialsDB.dbโ€ se nalazi u istom direktoriju, kako slijedi:

The SQLiteTutorialsDB baza podataka stvorena iz .sql datoteke sheme

Moลพete potvrditi da su tablice kreirane otvaranjem baze podataka koju smo upravo kreirali:

.open SQLiteTutorialsDB.db

Zatim napiลกite sljedeฤ‡u naredbu:

.tables

Ovo vam daje popis tablica u "SQLiteTutorialsDBโ€ i trebali biste vidjeti ฤetiri tablice koje smo upravo kreirali:

Naredba .tables koja navodi ฤetiri tablice kreirane u SQLiteTutorialsDB

S primjerom baze podataka i njezinim ฤetiri tablice na mjestu, moลพete prijeฤ‡i na pokretanje SQLite Upiti za umetanje, aลพuriranje i brisanje protiv podataka.

SQLite Sigurnosna kopija i baza podataka

Za izradu sigurnosne kopije baze podataka, prvo je morate otvoriti na sljedeฤ‡i naฤin:

  • Idite do mape "C:\sqlite", a zatim dvaput kliknite sqlite3.exe da biste je otvorili.
  • Otvorite bazu podataka pomoฤ‡u sljedeฤ‡eg upita:
.open c:/sqlite/sample/SchoolDB.db

Ova naredba otvara bazu podataka koja se nalazi u direktoriju โ€œc:/sqlite/sample/โ€.

Ako se nalazi u istom direktoriju kao i sqlite3.exe, tada ne morate odrediti lokaciju, ovako:

.open SchoolDB.db

Zatim, za izradu sigurnosne kopije baze podataka, napiลกite sljedeฤ‡u naredbu. Ova naredba izraฤ‘uje sigurnosnu kopiju cijele baze podataka u novu datoteku โ€žSchoolDB.dbโ€œ u istom direktoriju:

.backup SchoolDB.db

Ako nakon izvrลกavanja te naredbe ne vidite nikakve greลกke, sigurnosna kopija je uspjeลกno stvorena.

SQLite Ispustite bazu podataka

Za razliku od drugih sustava za upravljanje bazama podataka, ne postoji naredba DROP DATABASE u SQLiteAko ลพelite ubaciti bazu podataka u SQLite, sve ลกto trebate uฤiniti je izbrisati datoteku baze podataka.

Napomene:

  • Ne moลพete stvoriti dvije baze podataka na istoj lokaciji s istim imenom; ime baze podataka je jedinstveno unutar direktorija.
  • Nazivi baza podataka ne razlikuju velika i mala slova.
  • Za izradu baza podataka nisu potrebne nikakve privilegije.

Pitanja i odgovori

SQLite je serverless engine koji cijelu bazu podataka ฤuva u jednoj viลกeplatformskoj datoteci. S manje od 500 KB, ne zahtijeva instalaciju ili konfiguraciju i radi ugraฤ‘en unutar aplikacija, a ne na zasebnom posluลพitelju.

SQLite Baze podataka obiฤno koriste ekstenzije .db, .sqlite ili .db3, a sve tri su identiฤne. SQLite identificira svoje datoteke internim zaglavljem, tako da je ekstenzija samo oznaka.

Da. SQLite je softver u javnoj domeni, potpuno besplatan za osobnu i komercijalnu upotrebu bez licence ili autorskih prava. Njegov izvorni kod i alati naredbenog retka nalaze se na sluลพbenoj SQLite web stranicu.

Otvorite sqlite3 s nazivom baze podataka i pokrenite .restore s datotekom sigurnosne kopije. Za .sql dump, pokrenite sqlite3 newdb.db < backup.sql kako biste ponovili svaku naredbu i ponovno izgradili podatke.

SQLite Ne zahtijeva server i temelji se na datotekama, ne zahtijeva postavljanje, pa je prikladan za male aplikacije za jednog korisnika. MySQL pokreฤ‡e posluลพiteljski proces i rukuje mnogim istovremenim programima za pisanje, ลกto odgovara veฤ‡im viลกekorisniฤkim sustavima.

SQLite ugraฤ‘en je u mobilne aplikacije, preglednike, softver za stolna raฤunala i IoT ureฤ‘aje jer radi izvan mreลพe bez servera. Pogodan je za lokalnu pohranu, prototipove i optereฤ‡enja s velikim brojem ฤitanja.

Da. GitHub kopilot piลกe CREATE TABLE naredbe i SQL upite iz kratkog komentara ili upita na jednostavnom engleskom jeziku te objaลกnjava postojeฤ‡e sheme. Uvijek pregledajte generirani SQL prije pokretanja.

Alati za pretvaranje teksta u SQL i modeli velikih jezika pretvaraju pitanja na obiฤnom engleskom jeziku u SQLite izjave ฤitajuฤ‡i vaลกu shemu. AI asistenti generiraju, optimiziraju i objaลกnjavaju upite, iako ljudski pregled rezultata ostaje kljuฤan.

Saลพmite ovu objavu uz: