Podcast
Questions and Answers
Trong cơ sở dữ liệu quan hệ, khái niệm nào sau đây dùng để xác định duy nhất mỗi bản ghi trong một bảng?
Trong cơ sở dữ liệu quan hệ, khái niệm nào sau đây dùng để xác định duy nhất mỗi bản ghi trong một bảng?
- Khóa ngoại (Foreign Key)
- Bản ghi (Record)
- Trường (Field)
- Khóa chính (Primary Key) (correct)
Câu lệnh SQL nào sau đây được sử dụng để truy vấn dữ liệu từ một bảng?
Câu lệnh SQL nào sau đây được sử dụng để truy vấn dữ liệu từ một bảng?
- `UPDATE`
- `SELECT` (correct)
- `INSERT`
- `DELETE`
Mệnh đề nào trong SQL được sử dụng để lọc các bản ghi dựa trên một điều kiện cụ thể?
Mệnh đề nào trong SQL được sử dụng để lọc các bản ghi dựa trên một điều kiện cụ thể?
- `GROUP BY`
- `WHERE` (correct)
- `ORDER BY`
- `HAVING`
Hàm SQL nào sau đây được sử dụng để tính tổng các giá trị trong một cột?
Hàm SQL nào sau đây được sử dụng để tính tổng các giá trị trong một cột?
Loại ràng buộc nào trong SQL đảm bảo rằng một cột không được chứa giá trị NULL?
Loại ràng buộc nào trong SQL đảm bảo rằng một cột không được chứa giá trị NULL?
Trong ngữ cảnh của giao tác (transaction) trong SQL, tính chất nào đảm bảo rằng tất cả các thao tác trong giao tác phải được thực hiện thành công, hoặc không có thao tác nào được thực hiện?
Trong ngữ cảnh của giao tác (transaction) trong SQL, tính chất nào đảm bảo rằng tất cả các thao tác trong giao tác phải được thực hiện thành công, hoặc không có thao tác nào được thực hiện?
Câu lệnh SQL nào được sử dụng để thay đổi cấu trúc của một bảng đã tồn tại?
Câu lệnh SQL nào được sử dụng để thay đổi cấu trúc của một bảng đã tồn tại?
Mệnh đề nào trong SQL cho phép bạn sắp xếp các bản ghi theo một hoặc nhiều cột?
Mệnh đề nào trong SQL cho phép bạn sắp xếp các bản ghi theo một hoặc nhiều cột?
Trong SQL, mệnh đề HAVING
khác với WHERE
như thế nào?
Trong SQL, mệnh đề HAVING
khác với WHERE
như thế nào?
Khái niệm nào sau đây mô tả một cột trong bảng mà tham chiếu đến khóa chính của một bảng khác?
Khái niệm nào sau đây mô tả một cột trong bảng mà tham chiếu đến khóa chính của một bảng khác?
Câu lệnh SQL nào sau đây được dùng để xóa một bảng khỏi cơ sở dữ liệu?
Câu lệnh SQL nào sau đây được dùng để xóa một bảng khỏi cơ sở dữ liệu?
Trong SQL, ràng buộc UNIQUE
có chức năng gì?
Trong SQL, ràng buộc UNIQUE
có chức năng gì?
Tính chất nào của giao tác (transaction) đảm bảo rằng dữ liệu sẽ được lưu giữ vĩnh viễn sau khi giao tác đã được cam kết (committed)?
Tính chất nào của giao tác (transaction) đảm bảo rằng dữ liệu sẽ được lưu giữ vĩnh viễn sau khi giao tác đã được cam kết (committed)?
Câu lệnh SQL nào sau đây dùng để thêm dữ liệu mới vào một bảng?
Câu lệnh SQL nào sau đây dùng để thêm dữ liệu mới vào một bảng?
Các loại JOIN
nào sau đây trả về tất cả các hàng từ bảng bên trái và các hàng phù hợp từ bảng bên phải?
Các loại JOIN
nào sau đây trả về tất cả các hàng từ bảng bên trái và các hàng phù hợp từ bảng bên phải?
Ràng buộc CHECK
trong SQL được sử dụng để làm gì?
Ràng buộc CHECK
trong SQL được sử dụng để làm gì?
Trong SQL, hàm nào sau đây được sử dụng để tìm giá trị nhỏ nhất trong một cột?
Trong SQL, hàm nào sau đây được sử dụng để tìm giá trị nhỏ nhất trong một cột?
Câu lệnh nào sau đây dùng để bắt đầu một giao tác (transaction) trong SQL?
Câu lệnh nào sau đây dùng để bắt đầu một giao tác (transaction) trong SQL?
Khi nào bạn nên sử dụng mệnh đề GROUP BY
trong một truy vấn SQL?
Khi nào bạn nên sử dụng mệnh đề GROUP BY
trong một truy vấn SQL?
Trong cơ sở dữ liệu quan hệ, tính toàn vẹn tham chiếu (referential integrity) đảm bảo điều gì?
Trong cơ sở dữ liệu quan hệ, tính toàn vẹn tham chiếu (referential integrity) đảm bảo điều gì?
Flashcards
Cơ sở dữ liệu quan hệ
Cơ sở dữ liệu quan hệ
Loại cơ sở dữ liệu dựa trên mô hình quan hệ, sử dụng các bảng để lưu trữ và quản lý dữ liệu.
Bảng (Table)
Bảng (Table)
Tập hợp các dữ liệu có cấu trúc, bao gồm các hàng (bản ghi) và các cột (trường).
Bản ghi (Record/Tuple)
Bản ghi (Record/Tuple)
Một hàng trong bảng, chứa thông tin về một đối tượng cụ thể.
Trường (Field/Attribute)
Trường (Field/Attribute)
Signup and view all the flashcards
Khóa chính (Primary Key)
Khóa chính (Primary Key)
Signup and view all the flashcards
Khóa ngoại (Foreign Key)
Khóa ngoại (Foreign Key)
Signup and view all the flashcards
SQL
SQL
Signup and view all the flashcards
SELECT
SELECT
Signup and view all the flashcards
INSERT
INSERT
Signup and view all the flashcards
UPDATE
UPDATE
Signup and view all the flashcards
DELETE
DELETE
Signup and view all the flashcards
CREATE TABLE
CREATE TABLE
Signup and view all the flashcards
ALTER TABLE
ALTER TABLE
Signup and view all the flashcards
DROP TABLE
DROP TABLE
Signup and view all the flashcards
WHERE
WHERE
Signup and view all the flashcards
ORDER BY
ORDER BY
Signup and view all the flashcards
GROUP BY
GROUP BY
Signup and view all the flashcards
HAVING
HAVING
Signup and view all the flashcards
JOIN
JOIN
Signup and view all the flashcards
NOT NULL
NOT NULL
Signup and view all the flashcards
Study Notes
- Cơ sở dữ liệu quan hệ (Relational Database) là một loại cơ sở dữ liệu dựa trên mô hình quan hệ, sử dụng các bảng để lưu trữ và quản lý dữ liệu.
Các Khái Niệm Cơ Bản
- Bảng (Table):
- Là tập hợp các dữ liệu có cấu trúc, bao gồm các hàng (bản ghi) và các cột (trường).
- Mỗi bảng biểu diễn một thực thể hoặc một mối quan hệ trong thế giới thực.
- Bản ghi (Record/Tuple):
- Là một hàng trong bảng, chứa thông tin về một đối tượng cụ thể.
- Mỗi bản ghi là một thể hiện của thực thể được mô tả bởi bảng.
- Trường (Field/Attribute):
- Là một cột trong bảng, mô tả một thuộc tính của thực thể.
- Mỗi trường có một kiểu dữ liệu cụ thể (ví dụ: số nguyên, chuỗi, ngày tháng).
- Khóa chính (Primary Key):
- Là một trường hoặc một tập hợp các trường dùng để xác định duy nhất mỗi bản ghi trong bảng.
- Không được phép có hai bản ghi có cùng giá trị khóa chính.
- Khóa chính không được chứa giá trị NULL.
- Khóa ngoại (Foreign Key):
- Là một trường hoặc một tập hợp các trường trong một bảng tham chiếu đến khóa chính của một bảng khác.
- Tạo mối quan hệ giữa hai bảng.
- Đảm bảo tính toàn vẹn tham chiếu (referential integrity) giữa các bảng.
SQL (Structured Query Language)
- SQL là ngôn ngữ truy vấn cấu trúc, được sử dụng để giao tiếp với cơ sở dữ liệu quan hệ.
- Cho phép người dùng thực hiện các thao tác như truy vấn, thêm, sửa, xóa dữ liệu, cũng như định nghĩa cấu trúc cơ sở dữ liệu.
Các Câu Lệnh SQL Cơ Bản
- SELECT:
- Dùng để truy vấn dữ liệu từ một hoặc nhiều bảng.
- Cú pháp cơ bản:
SELECT column1, column2, ... FROM table_name WHERE condition;
- INSERT:
- Dùng để thêm mới dữ liệu vào bảng.
- Cú pháp cơ bản:
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
- UPDATE:
- Dùng để sửa đổi dữ liệu trong bảng.
- Cú pháp cơ bản:
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
- DELETE:
- Dùng để xóa dữ liệu khỏi bảng.
- Cú pháp cơ bản:
DELETE FROM table_name WHERE condition;
- CREATE TABLE:
- Dùng để tạo một bảng mới trong cơ sở dữ liệu.
- Cú pháp cơ bản:
CREATE TABLE table_name (column1 datatype, column2 datatype, ...);
- ALTER TABLE:
- Dùng để sửa đổi cấu trúc của một bảng đã có.
- Ví dụ: thêm, xóa, hoặc sửa đổi cột.
- DROP TABLE:
- Dùng để xóa một bảng khỏi cơ sở dữ liệu.
- Cú pháp cơ bản:
DROP TABLE table_name;
Các Mệnh Đề Quan Trọng Trong SQL
- WHERE:
- Dùng để lọc các bản ghi dựa trên một điều kiện cụ thể.
- Chỉ trả về các bản ghi thỏa mãn điều kiện.
- ORDER BY:
- Dùng để sắp xếp các bản ghi theo một hoặc nhiều cột.
- Có thể sắp xếp theo thứ tự tăng dần (ASC) hoặc giảm dần (DESC).
- GROUP BY:
- Dùng để nhóm các bản ghi có cùng giá trị trong một hoặc nhiều cột.
- Thường được sử dụng với các hàm tổng hợp (ví dụ: COUNT, SUM, AVG, MIN, MAX).
- HAVING:
- Dùng để lọc các nhóm đã được tạo bởi GROUP BY dựa trên một điều kiện.
- Tương tự như WHERE, nhưng áp dụng cho các nhóm thay vì các bản ghi.
- JOIN:
- Dùng để kết hợp các bản ghi từ hai hoặc nhiều bảng dựa trên một điều kiện liên quan giữa các cột.
- Các loại JOIN phổ biến: INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN.
Các Hàm Thông Dụng Trong SQL
- COUNT():
- Đếm số lượng bản ghi thỏa mãn một điều kiện.
- SUM():
- Tính tổng các giá trị trong một cột.
- AVG():
- Tính trung bình các giá trị trong một cột.
- MIN():
- Tìm giá trị nhỏ nhất trong một cột.
- MAX():
- Tìm giá trị lớn nhất trong một cột.
- Các hàm xử lý chuỗi (ví dụ: SUBSTRING, UPPER, LOWER).
- Các hàm xử lý ngày tháng (ví dụ: YEAR, MONTH, DAY).
Ví Dụ Minh Họa
- Giả sử có một bảng
Customers
với các cộtCustomerID
,Name
,City
. - Truy vấn để lấy tất cả khách hàng từ thành phố "Hanoi":
SELECT * FROM Customers WHERE City = 'Hanoi';
- Truy vấn để đếm số lượng khách hàng trong mỗi thành phố:
SELECT City, COUNT(*) FROM Customers GROUP BY City;
- Truy vấn để lấy danh sách khách hàng và đơn hàng của họ (giả sử có bảng
Orders
với cộtCustomerID
là khóa ngoại):SELECT Customers.Name, Orders.OrderID FROM Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID;
Các Ràng Buộc (Constraints) Trong SQL
- NOT NULL:
- Đảm bảo rằng một cột không được chứa giá trị NULL.
- UNIQUE:
- Đảm bảo rằng tất cả các giá trị trong một cột là duy nhất.
- PRIMARY KEY:
- Xác định một cột hoặc một tập hợp các cột là khóa chính của bảng.
- FOREIGN KEY:
- Xác định một cột hoặc một tập hợp các cột là khóa ngoại, tham chiếu đến khóa chính của một bảng khác.
- CHECK:
- Đảm bảo rằng các giá trị trong một cột phải thỏa mãn một điều kiện cụ thể.
- DEFAULT:
- Chỉ định một giá trị mặc định cho một cột nếu không có giá trị nào được cung cấp khi thêm mới bản ghi.
Tính Toàn Vẹn Dữ Liệu
- Tính toàn vẹn thực thể (Entity Integrity):
- Đảm bảo rằng mỗi bảng phải có một khóa chính, và khóa chính không được chứa giá trị NULL.
- Tính toàn vẹn tham chiếu (Referential Integrity):
- Đảm bảo rằng các mối quan hệ giữa các bảng là hợp lệ.
- Khóa ngoại phải tham chiếu đến một khóa chính tồn tại, hoặc phải là NULL.
- Tính toàn vẹn miền (Domain Integrity):
- Đảm bảo rằng các giá trị trong một cột phải thuộc một miền dữ liệu hợp lệ.
- Ví dụ: kiểu dữ liệu, ràng buộc CHECK.
- Tính toàn vẹn do người dùng định nghĩa (User-Defined Integrity):
- Các quy tắc hoặc ràng buộc do người dùng định nghĩa để đảm bảo tính chính xác của dữ liệu.
Giao Tác (Transaction)
- Giao tác là một chuỗi các thao tác được thực hiện như một đơn vị duy nhất.
- Đảm bảo tính nhất quán, toàn vẹn và độ tin cậy của dữ liệu.
- Các tính chất ACID của giao tác:
- Tính nguyên tử (Atomicity): Tất cả các thao tác trong giao tác phải được thực hiện thành công, hoặc không có thao tác nào được thực hiện.
- Tính nhất quán (Consistency): Giao tác phải đưa cơ sở dữ liệu từ một trạng thái hợp lệ sang một trạng thái hợp lệ khác.
- Tính độc lập (Isolation): Các giao tác phải được thực hiện độc lập với nhau.
- Tính bền vững (Durability): Kết quả của một giao tác đã được cam kết (committed) phải được lưu giữ vĩnh viễn.
- Các câu lệnh quản lý giao tác:
- BEGIN TRANSACTION: Bắt đầu một giao tác.
- COMMIT: Kết thúc giao tác và lưu các thay đổi vào cơ sở dữ liệu.
- ROLLBACK: Hủy bỏ giao tác và khôi phục cơ sở dữ liệu về trạng thái trước khi bắt đầu giao tác.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.