Chuyển đến nội dung chính

Hiểu về Giao dịch SQL: Hướng dẫn Toàn diện

Khám phá giao dịch SQL, tầm quan trọng của chúng và cách triển khai để quản lý cơ sở dữ liệu đáng tin cậy.
Đã cập nhật 27 thg 7, 2026  · 9 phút đọc

Khám phá với AI

Mở trong ChatGPTMở trong ClaudeMở trong Perplexity

Giao dịch SQL là một khía cạnh quan trọng của quản trị cơ sở dữ liệu. Chúng tồn tại để đảm bảo dữ liệu của bạn luôn chính xác và đáng tin cậy. Thực tế, tôi cho rằng chúng là phần cốt lõi để duy trì tính toàn vẹn dữ liệu trong bất kỳ ứng dụng nào.

Trong hướng dẫn này, chúng ta sẽ khám phá giao dịch SQL từ những nền tảng cơ bản. Chúng ta sẽ đề cập mọi điều bạn cần biết. Và nếu bạn muốn nâng cao kỹ năng SQL, tôi rất khuyến nghị khóa học Giới thiệu về SQL hoặc SQL Server Trung cấp, tùy theo mức độ quen thuộc của bạn với SQL. Cả hai khóa học đều rất phổ biến và là cách tuyệt vời để xây dựng nền tảng vững chắc về SQL với các bài tập có cấu trúc dựa trên tình huống thực tế.

Giao dịch SQL là gì?

Giao dịch SQL đảm bảo một chuỗi thao tác SQL được thực thi như một quy trình thống nhất. Điều này khiến chúng trở thành công cụ tốt để duy trì tính toàn vẹn dữ liệu. Bạn có thể dùng chúng theo nhiều cách khác nhau, như cập nhật nhiều hàng trong một bảng hoặc chuyển tiền giữa các tài khoản. Giao dịch hoạt động bằng cách nhóm các thao tác thành một đơn vị logic, nhờ đó bạn có được tính nhất quán và không bị gián đoạn.

Mục đích của giao dịch SQL

Một giao dịch SQL là chuỗi một hoặc nhiều thao tác cơ sở dữ liệu (như INSERT, UPDATE hoặc DELETE) được xử lý như một đơn vị công việc không thể chia nhỏ. Với giao dịch, hoặc tất cả thay đổi trong giao dịch được áp dụng thành công, hoặc không thay đổi nào được áp dụng. Điều này đảm bảo cơ sở dữ liệu vẫn nhất quán và không bị hỏng.

Ví dụ, hãy hình dung việc chuyển tiền giữa hai tài khoản ngân hàng:

  1. Trừ 100 đô khỏi Tài khoản A.
  2. Cộng 100 đô vào Tài khoản B.

Nếu một thao tác thất bại mà không có giao dịch, bạn có nguy cơ dữ liệu không nhất quán—tiền bị trừ nhưng không được ghi có. Bằng cách nhóm các bước này vào một giao dịch, bạn đảm bảo hoặc cả hai thao tác đều thành công, hoặc không thao tác nào được áp dụng.

Các thuộc tính then chốt của giao dịch: ACID

Các thuộc tính ACID chi phối độ tin cậy của giao dịch:

Thuộc tính Mô tả So sánh thực tế
Tính nguyên tử (Atomicity) Đảm bảo hoặc hoàn thành tất cả phần của giao dịch, hoặc không phần nào. Công tắc đèn: Hoặc hoàn toàn bật hoặc hoàn toàn tắt—không có trạng thái trung gian.
Tính nhất quán (Consistency) Đảm bảo giao dịch đưa cơ sở dữ liệu về trạng thái hợp lệ và tuân thủ quy tắc, ràng buộc. Cái cân: Nếu thêm trọng lượng vào một bên, bên kia điều chỉnh để giữ cân bằng.
Tính cô lập (Isolation) Ngăn giao dịch can thiệp lẫn nhau, đảm bảo dữ liệu được xử lý như thể mỗi giao dịch chạy riêng. Quầy thanh toán siêu thị: Mỗi người trong hàng được phục vụ riêng mà không lẫn đồ của nhau.
Tính bền vững (Durability) Đảm bảo khi giao dịch được cam kết, các thay đổi là vĩnh viễn, ngay cả khi hệ thống gặp sự cố. Lưu tài liệu: Tài liệu vẫn nguyên vẹn ngay cả khi máy tính của bạn bị treo.

Tính nguyên tử: Đảm bảo giao dịch trọn vẹn

Tính nguyên tử nghĩa là giao dịch hoặc tất cả hoặc không gì cả. Nếu bất kỳ phần nào của giao dịch thất bại, toàn bộ giao dịch sẽ bị khôi phục, để cơ sở dữ liệu không đổi. Ví dụ:

BEGIN TRANSACTION;

UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
UPDATE accounts SET balance = balance + 100 WHERE account_id = 2;
-- Commit only if both operations succeed
COMMIT;

Nếu lỗi xảy ra trong UPDATE thứ hai, cơ sở dữ liệu sẽ quay về trạng thái ban đầu, đảm bảo không có thay đổi dở dang.

Tính nhất quán: Duy trì quy tắc của cơ sở dữ liệu

Tính nhất quán đảm bảo giao dịch đư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. Điều này có nghĩa mọi quy tắc, ràng buộc và quan hệ đều được duy trì trong suốt giao dịch.

Chẳng hạn, nếu một bảng có ràng buộc NOT NULL trên một cột, giao dịch cố gắng chèn giá trị NULL sẽ thất bại, bảo toàn tính toàn vẹn dữ liệu.

Tính cô lập: Ngăn giao dịch can thiệp

Tính cô lập đảm bảo các giao dịch không xung đột với nhau, ngay cả khi thực thi đồng thời. Ví dụ, nếu hai người dùng cập nhật cùng một bản ghi, tính cô lập ngăn thay đổi của người này ghi đè hoặc làm hỏng của người kia.

Các mức cô lập như READ COMMITTEDSERIALIZABLE quyết định mức độ tách biệt nghiêm ngặt ra sao. Điều này cân bằng hiệu năng và tính nhất quán.

Tính bền vững: Biến thay đổi thành vĩnh viễn

Tính bền vững đảm bảo những thay đổi của cơ sở dữ liệu là vĩnh viễn khi giao dịch được cam kết, ngay cả khi hệ thống gặp sự cố. Cơ sở dữ liệu đạt được tính bền vững bằng cách ghi giao dịch đã cam kết vào bộ nhớ không mất dữ liệu.

Ví dụ, một email nháp được lưu trữ an toàn, nên vẫn có sẵn ngay cả khi máy tính của bạn bị treo.

Tôi khuyến nghị bạn học khóa Giao dịch và Xử lý Lỗi trong SQL Server. Đây là tài nguyên giá trị để học các ý tưởng quan trọng trong SQL như xử lý lỗi.

Cách triển khai Giao dịch SQL

Để sử dụng giao dịch SQL, chúng ta dùng các lệnh như BEGIN, COMMITROLLBACK nhằm quản lý giao dịch hiệu quả, nhóm thao tác lại và xử lý lỗi.

Sử dụng BEGIN, COMMIT và ROLLBACK

  1. BEGIN: Đánh dấu bắt đầu một giao dịch. Mọi thao tác sau đó sẽ thuộc giao dịch này.

  2. COMMIT: Hoàn tất giao dịch, biến mọi thay đổi thành vĩnh viễn trong cơ sở dữ liệu.

  3. ROLLBACK: Hoàn tác tất cả thay đổi thực hiện trong giao dịch, đưa cơ sở dữ liệu về trạng thái trước đó khi có lỗi hoặc sự cố.

Quy trình đơn giản như sau:

BEGIN TRANSACTION; -- Start the transaction
-- Perform database operations
UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
UPDATE accounts SET balance = balance + 100 WHERE account_id = 2;
COMMIT; -- Finalize the transaction

Nếu có lỗi xảy ra, bạn có thể thay vào đó khôi phục giao dịch:

BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
-- Simulate an error
ROLLBACK; -- Undo the changes

Ví dụ thực tế về triển khai giao dịch

Như đã nói, bằng cách nhóm các thao tác liên quan, giao dịch đảm bảo hoặc tất cả thay đổi được áp dụng thành công hoặc không áp dụng gì cả, tránh trạng thái không nhất quán. Giờ hãy thử các ví dụ thực tế để cho thấy giao dịch hoạt động ra sao.

Ví dụ 1: Chuyển tiền giữa các tài khoản

Trong hệ thống ngân hàng, chuyển tiền giữa các tài khoản đòi hỏi ghi nợ một tài khoản và ghi có tài khoản khác. Một giao dịch đảm bảo các thao tác này cùng thành công hoặc cùng thất bại.

BEGIN TRANSACTION;
-- Deduct $500 from account A
UPDATE accounts SET balance = balance - 500 WHERE account_id = 1;
-- Add $500 to account B
UPDATE accounts SET balance = balance + 500 WHERE account_id = 2;
-- Commit the transaction
COMMIT;
If an error occurs, such as insufficient funds, the transaction can be rolled back:
BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 500 WHERE account_id = 1;
-- Check for errors (pseudo-code for demonstration)
-- IF insufficient_balance THEN
ROLLBACK;
-- ELSE Commit the transaction
COMMIT;

Ví dụ 2: Xử lý tồn kho trong thương mại điện tử

Hãy tưởng tượng một nền tảng thương mại điện tử nơi một giao dịch cần đồng thời cập nhật mức tồn kho và ghi nhận đơn hàng.

BEGIN TRANSACTION;
-- Reduce inventory for the purchased product
UPDATE inventory SET stock = stock - 1 WHERE product_id = 101;
-- Record the sale in the orders table
INSERT INTO orders (order_id, product_id, quantity) VALUES (12345, 101, 1);
-- Commit the transaction
COMMIT;
```SQL
If an error occurs, such as trying to sell an out-of-stock product, the transaction can be rolled back to ensure consistency.
```SQL
BEGIN TRANSACTION;
UPDATE inventory SET stock = stock - 1 WHERE product_id = 101;
-- Check stock levels (pseudo-code)
-- IF stock < 0 THEN
ROLLBACK;
-- ELSE Record the sale and commit
INSERT INTO orders (order_id, product_id, quantity) VALUES (12345, 101, 1);
COMMIT;

Mẹo quản lý giao dịch hiệu quả

Quản lý giao dịch hiệu quả là chìa khóa để duy trì tính toàn vẹn của cơ sở dữ liệu và đảm bảo vận hành trơn tru. Dù bạn đang xử lý cập nhật tài chính hay làm việc với bộ dữ liệu phức tạp, tuân theo thực tiễn tốt có thể giúp bạn tránh sự cố. Dưới đây là một số mẹo giúp bạn tối ưu việc xử lý giao dịch:

  • Dùng giao dịch cho các thao tác quan trọng: Nhóm các thao tác phải cùng thành công hoặc cùng thất bại, như cập nhật tài chính hoặc chèn dữ liệu vào nhiều bảng, như ta đã thấy trong ví dụ.

  • Thiết lập cơ chế xử lý lỗi: Luôn dự phòng lỗi có thể xảy ra và sử dụng ROLLBACK để duy trì tính toàn vẹn dữ liệu.

  • Kiểm thử giao dịch: Mô phỏng các kịch bản khác nhau để đảm bảo logic giao dịch hoạt động đúng trong mọi điều kiện.

Hiểu và triển khai giao dịch hiệu quả giúp tăng độ vững chắc cho cơ sở dữ liệu của bạn và chuẩn bị để bạn đối mặt các thách thức SQL nâng cao. Để học sâu hơn, hãy khám phá lộ trình kỹ năng Nền tảng SQL để mài giũa kỹ năng quản lý cơ sở dữ liệu.

Những thách thức thường gặp và giải pháp trong Giao dịch SQL

Quản lý giao dịch SQL hiệu quả liên quan đến việc xử lý các vấn đề như khóa chết (deadlock), đồng thời (concurrency) và tính toàn vẹn dữ liệu. Hiểu các thách thức này và áp dụng chiến lược phù hợp có thể đảm bảo xử lý giao dịch trơn tru.

Xử lý deadlock và tính đồng thời

Deadlock và vấn đề đồng thời là thách thức phổ biến trong hệ thống cơ sở dữ liệu, đặc biệt khi nhiều giao dịch cạnh tranh tài nguyên dùng chung. Những vấn đề này có thể làm gián đoạn hiệu năng cơ sở dữ liệu, dẫn đến hoạt động chậm hoặc ngưng trệ. Triển khai chiến lược hiệu quả là điều thiết yếu để duy trì chức năng mượt mà.

Nhận diện và giải quyết deadlock

Deadlock xảy ra khi hai hoặc nhiều giao dịch chặn nhau vô thời hạn do chờ tài nguyên do giao dịch khác giữ. Để xử lý deadlock, hãy thực hiện các bước sau:

1. Nhận diện Deadlock

  • Dùng nhật ký cơ sở dữ liệu hoặc công cụ giám sát để phát hiện deadlock theo thời gian thực.
  • Các hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) hiện đại như PostgreSQL và SQL Server thường có cơ chế tích hợp để tự động phát hiện và chấm dứt deadlock.

2. Giải quyết Deadlock

  • Triển khai logic thử lại trong ứng dụng của bạn để chạy lại giao dịch thất bại sau khi deadlock được giải quyết.
  • Thiết lập thứ tự truy cập tài nguyên nhất quán giữa các giao dịch để giảm thiểu rủi ro deadlock.

Ví dụ về sắp xếp tài nguyên:

-- Example of resource ordering to prevent deadlocks
BEGIN TRANSACTION;
UPDATE table_a SET col = 'value' WHERE id = 1;
UPDATE table_b SET col = 'value' WHERE id = 2;
COMMIT;

Kỹ thuật quản lý tính đồng thời

Vấn đề đồng thời xảy ra khi nhiều giao dịch tương tác đồng thời với tài nguyên chung, có thể dẫn đến xung đột hoặc dữ liệu không nhất quán. Để giải quyết các thách thức này, hai kỹ thuật chủ đạo thường được áp dụng:

Cơ chế khóa

Khóa kiểm soát quyền truy cập vào tài nguyên và đảm bảo tính toàn vẹn giao dịch. Khóa chia sẻ cho phép nhiều giao dịch đọc tài nguyên trong khi ngăn sửa đổi và duy trì tính nhất quán dữ liệu trong lúc đọc. Ngược lại, khóa độc quyền hạn chế tất cả giao dịch khác truy cập tài nguyên, đảm bảo quyền ghi độc quyền.

Ví dụ áp dụng khóa:

SELECT * FROM inventory WITH (ROWLOCK, HOLDLOCK) WHERE product_id = 101;

Mức cô lập

Mức cô lập xác định cách các giao dịch tương tác với nhau và cân bằng hiệu năng với tính nhất quán dữ liệu. Ví dụ:

  • Read Uncommitted cho phép đọc bẩn, cải thiện hiệu năng bằng cách giảm chi phí khóa.

  • Serializable đảm bảo mức độ nhất quán cao nhất bằng cách cô lập hoàn toàn các giao dịch, dù có thể làm giảm tính đồng thời.

Setting a transaction to the Serializable isolation level:
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;  
BEGIN TRANSACTION;  
-- Transaction logic  
COMMIT;  

Đảm bảo tính toàn vẹn dữ liệu và xử lý lỗi

Duy trì tính toàn vẹn dữ liệu trong giao dịch là điều thiết yếu để ngăn cập nhật dở dang hoặc trạng thái hỏng. Cơ chế xử lý lỗi vững chắc càng đảm bảo hoạt động cơ sở dữ liệu đáng tin cậy.

Dùng savepoint để khôi phục một phần

Savepoint cho phép bạn tạo các điểm kiểm soát trong giao dịch. Nếu xảy ra lỗi, bạn có thể khôi phục về một savepoint cụ thể thay vì hoàn tác toàn bộ giao dịch.

-- Start Transaction
BEGIN TRANSACTION;
-- Savepoint for first operation
SAVEPOINT step1;
-- First Operation: Debit Account 1
UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
-- Optional: Rollback to step1 if needed
-- ROLLBACK TO step1; 
-- Second Operation: Credit Account 2
UPDATE accounts SET balance = balance + 100 WHERE account_id = 2;
-- Commit Transaction
COMMIT;

Savepoint cung cấp khả năng kiểm soát chi tiết hơn, đặc biệt trong các giao dịch phức tạp có nhiều bước.

Triển khai cơ chế xử lý lỗi

Xử lý lỗi hiệu quả đảm bảo giao dịch hoàn tất thành công hoặc thất bại một cách gọn gàng. Các chiến lược chính gồm:

  1. Khối TRY CATCH : Xử lý lỗi linh hoạt trong phạm vi một khối giao dịch.

  2. Ghi nhật ký giao dịch: Duy trì nhật ký để theo dõi lỗi và trạng thái giao dịch.

-- Example of error handling with TRY CATCH
BEGIN TRY
    BEGIN TRANSACTION;
    UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
    UPDATE accounts SET balance = balance + 100 WHERE account_id = 2;
    COMMIT;
END TRY
BEGIN CATCH
    ROLLBACK;
    PRINT 'Transaction failed and rolled back.';
END CATCH;

Bằng cách sử dụng các cơ chế này, bạn có thể khôi phục sau lỗi bất ngờ và đảm bảo tính toàn vẹn dữ liệu được bảo toàn.

Giải quyết các thách thức như deadlock, vấn đề đồng thời và xử lý lỗi là điều then chốt để quản lý giao dịch vững chắc. Các kỹ thuật như đặt mức cô lập phù hợp, dùng savepoint và triển khai khối TRY...CATCH không chỉ duy trì tính toàn vẹn dữ liệu mà còn cải thiện độ tin cậy hệ thống.

Các khái niệm nâng cao trong Giao dịch SQL

Phần tiếp theo đề cập đến giao dịch lồng nhau, savepoint và thế giới phức tạp của giao dịch phân tán trên nhiều cơ sở dữ liệu. Tôi khuyên bạn học khóa Giới thiệu về Oracle SQL để tìm hiểu thêm các chủ đề nâng cao như vậy.

Giao dịch lồng nhau và savepoint

Giao dịch lồng nhau là các giao dịch bên trong giao dịch. Dù không phải RDBMS nào cũng hỗ trợ trực tiếp, chúng có thể được mô phỏng bằng savepoint để cung cấp khả năng kiểm soát chi tiết hơn đối với các thao tác.

Savepoint cho phép khôi phục một phần trong một giao dịch, giúp bạn cô lập và phục hồi lỗi ở những phần cụ thể của một giao dịch lớn hơn.

Cách savepoint hoạt động:

  1. Bắt đầu một giao dịch.
  2. Đặt các savepoint ở các giai đoạn quan trọng của giao dịch.
  3. Khôi phục về một savepoint nếu phát sinh vấn đề mà không phải hủy toàn bộ giao dịch.
  4. Cam kết giao dịch khi tất cả thao tác đều thành công.

Ví dụ: Mô phỏng giao dịch lồng nhau bằng savepoint

BEGIN TRANSACTION;
-- Step 1: Create a savepoint
SAVEPOINT step1;
-- Step 2: Execute an operation
UPDATE inventory SET quantity = quantity - 10 WHERE product_id = 1;
-- Step 3: Create another savepoint
SAVEPOINT step2;
-- Step 4: Execute another operation
UPDATE inventory SET quantity = quantity + 10 WHERE product_id = 2;
-- Roll back to a savepoint if needed
ROLLBACK TO step2;
-- Finalize the transaction
COMMIT;

Savepoint mang lại sự linh hoạt khi quản lý logic giao dịch phức tạp, cho phép bạn kiểm tra và xác thực từng phần nhỏ trước khi cam kết toàn bộ.

Giao dịch phân tán trên nhiều cơ sở dữ liệu

Giao dịch phân tán liên quan đến việc phối hợp hành động trên nhiều cơ sở dữ liệu để đảm bảo tính nhất quán. Những giao dịch này rất quan trọng với các hệ thống có kiến trúc phân tán, như microservices hoặc pipeline tích hợp dữ liệu.

Thách thức của giao dịch phân tán

  1. Tính nhất quán dữ liệu: Đảm bảo tất cả cơ sở dữ liệu duy trì trạng thái đồng bộ dù hoạt động độc lập.
  2. Độ trễ mạng: Độ trễ giao tiếp giữa các cơ sở dữ liệu có thể làm phức tạp thời điểm giao dịch.
  3. Lỗi một phần: Nếu một cơ sở dữ liệu cam kết còn cơ sở khác thất bại, toàn hệ thống có thể trở nên không nhất quán.

Giải pháp cho giao dịch phân tán

Các giao thức nâng cao như Cam kết Hai Pha (2PC)Cam kết Ba Pha (3PC) được sử dụng để giải quyết các thách thức này.

  • Cam kết Hai Pha (2PC):
    • Pha 1: Chuẩn bị – Tất cả cơ sở dữ liệu xác nhận đã sẵn sàng cam kết.
    • Pha 2: Cam kết – Nếu tất cả bên tham gia đồng ý, giao dịch được cam kết. Ngược lại, sẽ bị hoàn tác.
  • Cam kết Ba Pha (3PC) bổ sung một pha tiền cam kết (pre-commit) để xử lý các vấn đề như lỗi mạng trong 2PC.

Kết luận

Thành thạo giao dịch SQL là kỹ năng đáng giá cho bất kỳ nhà phát triển hay quản trị viên cơ sở dữ liệu nào. Để bắt đầu, tôi nghĩ bạn nên tìm hiểu các nguyên lý ACID và thực hành triển khai cơ bản với BEGIN, COMMITROLLBACK. Sau đó hãy chuyển sang các khái niệm nâng cao như giao dịch lồng nhau và giao dịch phân tán.

Để có khuyến nghị cụ thể nhằm cải thiện kỹ năng SQL, hãy thử khóa học SQL Server Trung cấp. Với một khóa học có cấu trúc và nội dung tương tự bài viết này nhưng chi tiết hơn nhiều và có bài tập thực hành, hãy học khóa Giao dịch và Xử lý Lỗi trong SQL Server. Học cả hai khóa sẽ giúp bạn trở thành một nhà phát triển vững vàng. Tôi cũng đã viết một bài về Trigger trong SQL, đây cũng là chủ đề quan trọng cho các nhà phát triển SQL, nên bạn hãy xem qua!

Câu hỏi thường gặp về Giao dịch SQL

Giao dịch SQL là gì?

Một giao dịch SQL là chuỗi thao tác được thực hiện như một đơn vị công việc logic duy nhất, đảm bảo tính toàn vẹn dữ liệu.

Vì sao giao dịch SQL quan trọng?

Giao dịch SQL rất quan trọng để duy trì tính toàn vẹn và nhất quán dữ liệu trong cơ sở dữ liệu bằng cách nhóm các thao tác thành một đơn vị.

Các thuộc tính ACID trong giao dịch SQL là gì?

Các thuộc tính ACID—Tính nguyên tử, Tính nhất quán, Tính cô lập, Tính bền vững—đảm bảo giao dịch tin cậy và nhất quán.

Bạn triển khai một giao dịch trong SQL như thế nào?

Sử dụng các câu lệnh BEGIN, COMMITROLLBACK để quản lý giao dịch trong SQL.

Deadlock trong giao dịch SQL là gì?

Deadlock xảy ra khi hai hoặc nhiều giao dịch chặn nhau, chờ tài nguyên do bên kia nắm giữ.

Làm thế nào để giải quyết deadlock trong SQL?

Có thể giải quyết deadlock bằng cách xác định các giao dịch liên quan và dùng chiến lược như timeout hoặc ưu tiên để xử lý.

Savepoint trong giao dịch SQL là gì?

Savepoint cho phép khôi phục một phần trong giao dịch, cung cấp nhiều kiểm soát hơn đối với quản lý giao dịch.

Giao dịch lồng nhau là gì?

Giao dịch lồng nhau là các giao dịch bên trong một giao dịch, cho phép quản lý giao dịch phức tạp.

Giao dịch phân tán hoạt động như thế nào?

Giao dịch phân tán trải dài trên nhiều cơ sở dữ liệu, đòi hỏi sự phối hợp để đảm bảo tính nhất quán trên tất cả hệ thống liên quan.

Vai trò của xử lý lỗi trong giao dịch SQL là gì?

Xử lý lỗi đảm bảo giao dịch hoàn tất thành công hoặc được hoàn tác khi có lỗi, duy trì tính toàn vẹn dữ liệu.


Oluseye Jeremiah's photo
Author
Oluseye Jeremiah
LinkedIn

Nhà viết nội dung về công nghệ, chuyên về AI, ML và khoa học dữ liệu, giúp làm rõ và phổ biến những ý tưởng phức tạp.

Chủ đề

Học SQL và kỹ thuật dữ liệu với DataCamp

Courses

Giao dịch và Xử lý lỗi trong SQL Server

4 giờ
16.3K
Xem chi tiếtRight Arrow
Bắt Đầu Khóa Học
Xem thêmRight Arrow
Có liên quan

blogs

Claude Opus 4.6: Tính năng, điểm chuẩn, các bài kiểm tra thực hành và hơn thế nữa

Mô hình mới nhất của Anthropic dẫn đầu bảng xếp hạng về mã hóa theo hướng tác nhân và suy luận phức tạp. Thêm nữa, nó có cửa sổ ngữ cảnh 1M.
Matt Crabtree's photo

Matt Crabtree

10 phút

Xem ThêmXem Thêm