SQLite Βάση δεδομένων: Πώς να δημιουργήσετε, να ανοίξετε, να δημιουργήσετε αντίγραφα ασφαλείας και να αποθέσετε αρχεία

⚡ Έξυπνη Σύνοψη

SQLite Οι βάσεις δεδομένων αποθηκεύουν ένα ολόκληρο σύνολο δεδομένων μέσα σε ένα μόνο αρχείο χαμηλού βάρους, το οποίο δεν απαιτεί διακομιστή, εγκατάσταση ή διαμόρφωση. Το εργαλείο γραμμής εντολών sqlite3 δημιουργεί, ανοίγει, συμπληρώνει, δημιουργεί αντίγραφα ασφαλείας και καταργεί αυτά τα αρχεία βάσης δεδομένων απευθείας από μια απλή συνεδρία τερματικού.

  • 🗄️ Δεν υπάρχει εντολή CREATE DATABASE: SQLite δεν έχει εντολή CREATE DATABASE. Η εκτέλεση της εντολής sqlite3 SchoolDB.db δημιουργεί το αρχείο αυτόματα.
  • 📂 Συγκεκριμένη τοποθεσία: Η εντολή .open δημιουργεί ή ανοίγει μια βάση δεδομένων σε οποιαδήποτε διαδρομή ορίσετε.
  • 🧱 Σχήμα από ένα αρχείο: Piping Ένα αρχείο .sql στο sqlite3 δημιουργεί μια νέα βάση δεδομένων που έχει ήδη συμπληρωθεί με τους πίνακες της.
  • 💾 Αντιγράφων ασφαλείας: Η εντολή .backup αντιγράφει μια ανοιχτή βάση δεδομένων σε ένα νέο αρχείο για το safekeeping.
  • 🗑️ Πτώσηping μια βάση δεδομένων: SQLite δεν έχει εντολή DROP DATABASE. Η διαγραφή του αρχείου βάσης δεδομένων την καταργεί εντελώς.
  • 🤖 Βοήθεια AI: Το GitHub Copilot και τα εργαλεία μετατροπής κειμένου σε SQL δημιουργούν SQLite σχήματα και ερωτήματα από προτροπές σε απλά αγγλικά.

SQLite βάση δεδομένων

SQLite Οι βάσεις δεδομένων είναι πολύ ελαφριές. Σε αντίθεση με άλλα συστήματα βάσεων δεδομένων, δεν απαιτείται διαμόρφωση ή εγκατάσταση για να ξεκινήσετε να εργάζεστε σε ένα SQLite βάση δεδομένων. Το μόνο που χρειάζεστε είναι η SQLite βιβλιοθήκη, η οποία έχει μέγεθος κάτω από 500 KB, ώστε να μπορείτε να ξεκινήσετε να εργάζεστε με αυτήν SQLite βάσεις δεδομένων και πίνακες απευθείας.

SQLite ΔΗΜΙΟΥΡΓΗΣΤΕ Βάση Δεδομένων

Σε αντίθεση με άλλα συστήματα διαχείρισης βάσεων δεδομένων, δεν υπάρχει εντολή CREATE DATABASE στο SQLiteΔείτε πώς μπορείτε να δημιουργήσετε μια νέα βάση δεδομένων:

  • Ανοίξτε το Windows Εργαλείο γραμμής εντολών (cmd.exe) από το μενού Έναρξη, πληκτρολογήστε "cmd" και ανοίξτε το.
  • Το παράθυρο cmd θα ανοίξει στον προεπιλεγμένο φάκελο χρήστη. Στο μηχάνημά μου, είναι "C:\Users\MGA":

SQLite Η γραμμή εντολών άνοιξε στον προεπιλεγμένο φάκελο χρήστη C:/Users/MGA

  • Από το σεμινάριο Εγκατάσταση και πακέτα, θα έπρεπε τώρα να έχετε δημιουργήσει ένα SQLite στον κατάλογο "C" και αντιγράψτε το sqlite3.exe σε αυτόν.
  • Στη συνέχεια, μεταβείτε στο σημείο όπου βρίσκεται το sqlite3.exe χρησιμοποιώντας τα εξής SQLite γραμμή εντολών:

Πλοήγηση στον φάκελο sqlite3.exe στο Windows γραμμή εντολών

Ακολουθεί η βασική σύνταξη της εντολής sqlite3 για τη δημιουργία μιας βάσης δεδομένων:

sqlite3 SchoolDB.db

Αυτό θα δημιουργήσει μια νέα βάση δεδομένων με το όνομα "SchoolDB.db" στον ίδιο κατάλογο όπου αντιγράψατε το αρχείο .exe.

Αν μεταβείτε στον κατάλογο "c:\sqlite", θα διαπιστώσετε ότι έχει δημιουργηθεί το αρχείο "SchoolDB.db", όπως φαίνεται στο ακόλουθο στιγμιότυπο οθόνης:

Εκτέλεση της εντολής sqlite3 SchoolDB.db για τη δημιουργία της βάσης δεδομένων

Το αρχείο βάσης δεδομένων SchoolDB.db που δημιουργήθηκε στον κατάλογο c:/sqlite

Μπορείτε να επιβεβαιώσετε ότι η βάση δεδομένων δημιουργήθηκε γράφοντας τα εξής SQLite εντολή:

.databases

Αυτό σας δίνει τη λίστα με τις βάσεις δεδομένων που δημιουργήθηκαν και θα πρέπει να δείτε τη νέα βάση δεδομένων "SchoolDB.db" εκεί:

Η εντολή .databases παραθέτει τη νεοδημιουργημένη βάση δεδομένων SchoolDB

SQLite ΔΗΜΙΟΥΡΓΗΣΤΕ βάση δεδομένων σε συγκεκριμένη τοποθεσία χρησιμοποιώντας το Open

Εάν θέλετε να δημιουργήσετε το αρχείο βάσης δεδομένων σε μια συγκεκριμένη τοποθεσία και όχι στον φάκελο όπου βρίσκεται το sqlite3.exe, δείτε πώς μπορείτε να ανοίξετε ένα SQLite αρχείο βάσης δεδομένων:

  • Μεταβείτε χειροκίνητα στον φάκελο "C:\sqlite" όπου βρίσκεται το sqlite3.exe.
  • Double-κάντε κλικ στο sqlite3.exe για να ανοίξετε το αρχείο SQLite γραμμή εντολών.
  • Η εντολή για το άνοιγμα ενός αρχείου βάσης δεδομένων είναι:

Άνοιγμα ενός SQLite αρχείο βάσης δεδομένων σε μια συγκεκριμένη θέση με την εντολή .open

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

Αυτό δημιουργεί τη βάση δεδομένων «SchoolDB.db» και αποθηκεύει το αρχείο στην καθορισμένη θέση. Η ίδια εντολή ανοίγει επίσης μια υπάρχουσα βάση δεδομένων, επομένως η εκτέλεσή της ξανά απλώς ανοίγει ξανά αυτήν τη βάση δεδομένων:

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

SQLite ελέγχει εάν υπάρχει το «SchoolDB.db» σε αυτήν την τοποθεσία. Εάν υπάρχει, SQLite το ανοίγει. Διαφορετικά, δημιουργείται μια νέα βάση δεδομένων με αυτό το όνομα αρχείου.

SQLite δημιουργήστε μια βάση δεδομένων και συμπληρώστε την με πίνακες από ένα αρχείο

Εάν έχετε ένα αρχείο .SQL που περιέχει το σχήμα πίνακα και θέλετε να δημιουργήσετε μια νέα βάση δεδομένων με τους ίδιους πίνακες, το ακόλουθο παράδειγμα εξηγεί πώς να το κάνετε αυτό.

Παράδειγμα:

Εδώ δημιουργούμε το δείγμα βάσης δεδομένων που χρησιμοποιήθηκε σε όλη αυτή τη διαδικασία. SQLite σεμινάριο, με όνομα «SQLiteTutorialsDB", και συμπληρώστε το με πίνακες ως εξής:

  • Ανοίξτε ένα αρχείο κειμένου και επικολλήστε το παρακάτω SQLite εντολές σε αυτό:
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  
);

Ο παραπάνω κώδικας δημιουργεί τέσσερις πίνακες, ως εξής:

  • Πίνακας «Τμήματα», με τις ακόλουθες στήλες:
    • «Κωδικός Τμήματος», ένα ακέραιο αναγνωριστικό τμήματος, που δηλώνεται ως ΠΡΩΤΕΥΟΝ ΚΛΕΙΔΙ.
    • «ΌνομαΤμήματος», μια συμβολοσειρά ονόματος τμήματος που δεν επιτρέπει τιμές null (NOT NULL).
  • Πίνακας «Φοιτητές», με τις ακόλουθες στήλες:
    • «StudentId», ένας ακέραιος αριθμός που δηλώνεται ως ΠΡΩΤΕΥΟΝ ΚΛΕΙΔΙ.
    • «StudentName», το όνομα του μαθητή, το οποίο δεν επιτρέπει μηδενική τιμή.
    • «Κωδικός Τμήματος», ένας ακέραιος αριθμός που αναφέρεται στο αναγνωριστικό τμήματος στον πίνακα Τμήματα.
    • «Ημερομηνία Γέννησης», η ημερομηνία γέννησης του μαθητή.
  • Πίνακας «Θέματα», με τις ακόλουθες στήλες:
    • «SubjectId», ένας ακέραιος αριθμός που δηλώνεται ως ΠΡΩΤΕΥΟΝ ΚΛΕΙΔΙ.
    • «SubjectName», μια τιμή συμβολοσειράς που δεν επιτρέπει τιμές null.
  • Πίνακας «Βαθμοί», με τις ακόλουθες στήλες:
    • «StudentId», ένας ακέραιος αριθμός που υποδεικνύει έναν φοιτητή.
    • «SubjectId», ένας ακέραιος αριθμός που υποδεικνύει ένα αναγνωριστικό θέματος.
    • «Βαθμός», ο βαθμός που λαμβάνει ένας μαθητής σε ένα μάθημα, ένας ακέραιος αριθμός που επιτρέπει μηδενικές τιμές.
  • Αποθηκεύστε το αρχείο ως "SQLiteTutorialsDB.sql” στην ίδια θέση με το sqlite3.exe.
  • Ανοίξτε το cmd.exe και μεταβείτε στον κατάλογο όπου βρίσκεται το sqlite3.exe.
  • Γράψε την ακόλουθη εντολή:
sqlite3 SQLiteTutorialsDB.db < SQLiteTutorialsDB.sql

Μια νέα βάση δεδομένων»SQLiteTutorialsDB” δημιουργείται και το αρχείο “SQLiteΤο αρχείο TutorialsDB.db” τοποθετείται στον ίδιο κατάλογο, ως εξής:

The SQLiteΗ βάση δεδομένων TutorialsDB δημιουργήθηκε από το αρχείο σχήματος .sql

Μπορείτε να επιβεβαιώσετε ότι οι πίνακες έχουν δημιουργηθεί ανοίγοντας τη βάση δεδομένων που μόλις δημιουργήσαμε:

.open SQLiteTutorialsDB.db

Στη συνέχεια γράψτε την ακόλουθη εντολή:

.tables

Αυτό σας δίνει τη λίστα με τους πίνακες στο "SQLiteTutorialsDB", και θα πρέπει να δείτε τους τέσσερις πίνακες που μόλις δημιουργήσαμε:

Η εντολή .tables που παραθέτει τους τέσσερις πίνακες που δημιουργήθηκαν στο SQLiteTutorialsDB

Με το δείγμα βάσης δεδομένων και τους τέσσερις πίνακες στη θέση τους, μπορείτε να προχωρήσετε στην εκτέλεση SQLite Ερωτήματα ΕΙΣΑΓΩΓΗΣ, ΕΝΗΜΕΡΩΣΗΣ και ΔΙΑΓΡΑΦΗΣ έναντι των δεδομένων.

SQLite Δημιουργία αντιγράφων ασφαλείας και βάση δεδομένων

Για να δημιουργήσετε αντίγραφο ασφαλείας μιας βάσης δεδομένων, πρέπει πρώτα να ανοίξετε αυτήν τη βάση δεδομένων, ως εξής:

  • Μεταβείτε στον φάκελο "C:\sqlite" και, στη συνέχεια, κάντε διπλό κλικ στο sqlite3.exe για να τον ανοίξετε.
  • Ανοίξτε τη βάση δεδομένων χρησιμοποιώντας το ακόλουθο ερώτημα:
.open c:/sqlite/sample/SchoolDB.db

Αυτή η εντολή ανοίγει μια βάση δεδομένων που βρίσκεται στον κατάλογο "c:/sqlite/sample/".

Εάν βρίσκεται στον ίδιο κατάλογο με το sqlite3.exe, τότε δεν χρειάζεται να καθορίσετε μια τοποθεσία, όπως παρακάτω:

.open SchoolDB.db

Στη συνέχεια, για να δημιουργήσετε αντίγραφο ασφαλείας της βάσης δεδομένων, γράψτε την ακόλουθη εντολή. Αυτή δημιουργεί αντίγραφο ασφαλείας ολόκληρης της βάσης δεδομένων σε ένα νέο αρχείο "SchoolDB.db" στον ίδιο κατάλογο:

.backup SchoolDB.db

Εάν δεν δείτε σφάλματα μετά την εκτέλεση αυτής της εντολής, το αντίγραφο ασφαλείας έχει δημιουργηθεί με επιτυχία.

SQLite Απόθεση βάσης δεδομένων

Σε αντίθεση με άλλα συστήματα διαχείρισης βάσεων δεδομένων, δεν υπάρχει εντολή DROP DATABASE στο SQLiteΑν θέλετε να αποθέσετε μια βάση δεδομένων SQLite, το μόνο που έχετε να κάνετε είναι να διαγράψετε το αρχείο βάσης δεδομένων.

:

  • Δεν μπορείτε να δημιουργήσετε δύο βάσεις δεδομένων στην ίδια τοποθεσία με το ίδιο όνομα. Το όνομα της βάσης δεδομένων είναι μοναδικό μέσα σε έναν κατάλογο.
  • Τα ονόματα βάσεων δεδομένων δεν κάνουν διάκριση πεζών-κεφαλαίων.
  • Δεν απαιτούνται δικαιώματα για τη δημιουργία των βάσεων δεδομένων.

Συχνές Ερωτήσεις

SQLite είναι μια μηχανή χωρίς διακομιστή που διατηρεί μια ολόκληρη βάση δεδομένων σε ένα αρχείο πολλαπλών πλατφορμών. Με μέγεθος κάτω από 500 KB, δεν χρειάζεται εγκατάσταση ή διαμόρφωση και εκτελείται ενσωματωμένη σε εφαρμογές και όχι σε ξεχωριστό διακομιστή.

SQLite Οι βάσεις δεδομένων χρησιμοποιούν συνήθως την επέκταση .db, .sqlite ή .db3 και οι τρεις είναι πανομοιότυπες. SQLite αναγνωρίζει τα αρχεία του από μια εσωτερική κεφαλίδα, επομένως η επέκταση είναι μόνο μια ετικέτα.

Ναί. SQLite είναι λογισμικό δημόσιου τομέα, εντελώς δωρεάν για προσωπική και εμπορική χρήση χωρίς άδεια χρήσης ή δικαιώματα. Ο πηγαίος κώδικας και τα εργαλεία γραμμής εντολών του βρίσκονται στην επίσημη ιστοσελίδα SQLite ιστοσελίδα.

Ανοίξτε το sqlite3 με ένα όνομα βάσης δεδομένων και εκτελέστε την εντολή .restore με το αρχείο αντιγράφου ασφαλείας. Για ένα αρχείο dump .sql, εκτελέστε την εντολή sqlite3 newdb.db < backup.sql για να αναπαράγετε κάθε εντολή και να αναδημιουργήσετε τα δεδομένα.

SQLite Δεν απαιτεί διακομιστή και βασίζεται σε αρχεία, επομένως είναι κατάλληλο για μικρές εφαρμογές ενός χρήστη. MySQL Εκτελεί μια διεργασία διακομιστή και χειρίζεται πολλούς ταυτόχρονους συγγραφείς, προσαρμόζοντας σε μεγαλύτερα συστήματα πολλαπλών χρηστών.

SQLite Είναι ενσωματωμένο σε εφαρμογές για κινητά, προγράμματα περιήγησης, λογισμικό για υπολογιστές και συσκευές IoT επειδή λειτουργεί εκτός σύνδεσης χωρίς διακομιστή. Είναι κατάλληλο για τοπικό χώρο αποθήκευσης, πρωτότυπα και φόρτους εργασίας με μεγάλο όγκο ανάγνωσης.

Ναί. GitHub Copilot Γράφει εντολές CREATE TABLE και ερωτήματα SQL από ένα σύντομο σχόλιο ή μια απλή αγγλική προτροπή και εξηγεί υπάρχοντα σχήματα. Να ελέγχετε πάντα την παραγόμενη SQL πριν την εκτελέσετε.

Τα εργαλεία μετατροπής κειμένου σε SQL και τα μεγάλα γλωσσικά μοντέλα μετατρέπουν τις ερωτήσεις σε απλά αγγλικά σε SQLite δηλώσεις διαβάζοντας το σχήμά σας. Οι βοηθοί τεχνητής νοημοσύνης δημιουργούν, βελτιστοποιούν και εξηγούν ερωτήματα, αν και ο ανθρώπινος έλεγχος της εξόδου παραμένει απαραίτητος.

Συνοψίστε αυτήν την ανάρτηση με: