SQLite - Lệnh: Hướng dẫn thân thiện cho người mới bắt đầu
Xin chào các bạn đam mê cơ sở dữ liệu! Tôi rất vui mừng được làm hướng dẫn viên cho các bạn trong hành trình thú vị vào thế giới các lệnh SQLite. Là một ai đó đã dạy khoa học máy tính trong nhiều năm, tôi có thể告诉 bạn rằng SQLite giống như một chú chó con trong thế giới cơ sở dữ liệu - dễ tiếp cận, vui vẻ khi chơi và trung thành một khi bạn hiểu nó. Hãy cùng nhảy vào nào!
Hiểu về các lệnh SQLite
Trước khi chúng ta đi vào chi tiết, hãy dành một chút thời gian để hiểu các lệnh SQLite là gì. Hãy tưởng tượng chúng như ngôn ngữ bạn sử dụng để giao tiếp với cơ sở dữ liệu SQLite của bạn. Giống như bạn có thể sử dụng tiếng Anh để yêu cầu thư ký 图书馆 tìm một cuốn sách cho bạn, bạn sử dụng các lệnh SQLite để yêu cầu cơ sở dữ liệu của bạn lưu trữ, lấy hoặc thao tác dữ liệu.
Các lệnh SQLite cơ bản
Hãy bắt đầu với một số lệnh SQLite phổ biến nhất. Tôi thích gọi chúng là "bánh mì và bơ" của SQLite - bạn sẽ sử dụng chúng rất thường xuyên!
Lệnh | Mô tả | Ví dụ |
---|---|---|
CREATE TABLE | Tạo một bảng mới | CREATE TABLE students (id INTEGER PRIMARY KEY, name TEXT, age INTEGER); |
INSERT | Thêm dữ liệu mới vào bảng | INSERT INTO students (name, age) VALUES ('Alice', 20); |
SELECT | Lấy dữ liệu từ bảng | SELECT * FROM students; |
UPDATE | Chỉnh sửa dữ liệu hiện có | UPDATE students SET age = 21 WHERE name = 'Alice'; |
DELETE | Xóa dữ liệu từ bảng | DELETE FROM students WHERE name = 'Alice'; |
Hãy phân tích từng lệnh này với một số ví dụ:
CREATE TABLE
CREATE TABLE students (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER
);
Lệnh này tạo một bảng mới叫做 "students". Nó giống như việc bạn thiết lập một tủ档案 mới trong văn phòng của bạn. Mỗi học sinh sẽ có một ID (độc nhất, giống như số an sinh xã hội), một tên và một tuổi.
INSERT
INSERT INTO students (name, age) VALUES ('Alice', 20);
INSERT INTO students (name, age) VALUES ('Bob', 22);
Những lệnh này thêm học sinh mới vào bảng của chúng ta. Nó giống như việc điền các thẻ chỉ mục và đặt chúng vào tủ档案.
SELECT
SELECT * FROM students;
Lệnh này lấy tất cả dữ liệu từ bảng students. Nó giống như việc mở tủ档案 và nhìn tất cả các thẻ chỉ mục cùng một lúc.
SELECT name FROM students WHERE age > 21;
Lệnh này cụ thể hơn - nó chỉ lấy tên của học sinh trên 21 tuổi. Nó giống như yêu cầu trợ lý của bạn chỉ lấy ra các thẻ chỉ mục của học sinh đủ tuổi uống rượu (tại Mỹ, ít nhất!).
UPDATE
UPDATE students SET age = 21 WHERE name = 'Alice';
Lệnh này thay đổi tuổi của Alice thành 21. Có lẽ là sinh nhật của cô ấy! Nó giống như việc bạn đi tới thẻ chỉ mục của Alice và cập nhật tuổi của cô ấy bằng bút.
DELETE
DELETE FROM students WHERE name = 'Bob';
Lệnh này xóa Bob khỏi bảng students. Có lẽ anh ấy đã tốt nghiệp? Nó giống như việc lấy thẻ chỉ mục của Bob ra khỏi tủ档案 và xé nó.
Định dạng đầu ra
Bây giờ chúng ta đã bao gồm các alap, hãy nói về việc làm cho đầu ra của chúng ta trông đẹp mắt. Cứ nghĩ xem, mục đích của việc có tất cả dữ liệu này là gì nếu chúng ta không thể trình bày nó đẹp mắt?
Lệnh .mode
SQLite có một lệnh đặc biệt gọi là .mode
để thay đổi cách đầu ra được hiển thị. Dưới đây là một số chế độ hữu ích:
Chế độ | Mô tả |
---|---|
column | Hiển thị đầu ra theo cột |
line | Hiển thị dữ liệu của mỗi hàng trên một dòng |
csv | Xuất dữ liệu theo định dạng CSV |
html | Xuất dữ liệu dưới dạng bảng HTML |
Hãy xem chúng trong hành động:
.mode column
SELECT * FROM students;
Điều này sẽ hiển thị dữ liệu học sinh của chúng ta theo cột, giúp dễ đọc.
.mode line
SELECT * FROM students;
Điều này sẽ hiển thị thông tin của mỗi học sinh trên một dòng, rất hữu ích khi bạn có nhiều cột.
.mode csv
SELECT * FROM students;
Điều này xuất dữ liệu theo định dạng dễ nhập vào phần mềm bảng tính như Excel.
Lệnh .header
Một lệnh định dạng hữu ích khác là .header
. Khi đặt thành ON, nó hiển thị tên cột ở trên cùng của đầu ra.
.header ON
.mode column
SELECT * FROM students;
Điều này sẽ hiển thị dữ liệu của bạn theo cột với tiêu đề, giúp rõ ràng hơn về từng piece của dữ liệu.
Bảng sqlite_master
Bây giờ, hãy nhìn vào sau hậu trường và xem SQLite quản lý tất cả các bảng và chỉ mục của chúng ta như thế nào. Nó làm điều này bằng cách sử dụng một bảng đặc biệt gọi là sqlite_master
.
Để xem nội dung của sqlite_master
, bạn có thể sử dụng lệnh này:
SELECT * FROM sqlite_master;
Điều này sẽ hiển thị tất cả các bảng và chỉ mục trong cơ sở dữ liệu của bạn, cùng với SQL được sử dụng để tạo chúng. Nó giống như việc bạn có một bản đồ của toàn bộ cơ sở dữ liệu của bạn!
Dưới đây là ý nghĩa của từng cột trong sqlite_master
:
Cột | Mô tả |
---|---|
type | Loại đối tượng (bảng, chỉ mục, view, hoặc trigger) |
name | Tên của đối tượng |
tbl_name | Bảng mà đối tượng liên quan |
rootpage | Số trang của trang gốc cho đối tượng |
sql | Câu lệnh SQL được sử dụng để tạo đối tượng |
Hiểu sqlite_master
giống như việc bạn có khả năng nhìn thấy xuyên qua cơ sở dữ liệu. Nó cho bạn biết cách mọi thứ được cấu trúc và kết nối với nhau.
Kết luận
Và thế là bạn đã có nó, các bạn! Chúng ta đã cùng nhau hành trình qua các alap của các lệnh SQLite, học cách làm cho đầu ra của chúng ta trông đẹp mắt, và thậm chí còn nhìn vào bảng sqlite_master
. Nhớ rằng, học SQLite giống như việc học骑自行车 - nó có thể trông不稳定 ban đầu, nhưng với sự luyện tập, bạn sẽ nhanh chóng zoom qua cơ sở dữ liệu của mình!
Tiếp tục thí nghiệm, tiếp tục truy vấn, và quan trọng nhất, tiếp tục vui vẻ với dữ liệu. Trước khi bạn nhận ra, bạn sẽ trở thành phù thủy SQLite trong nhóm bạn bè của mình, làm mọi người ngạc nhiên với phép thuật cơ sở dữ liệu của bạn. Chúc các bạn vui vẻ编码!
Credits: Image by storyset