Lesson 51/100

Tutorials SQL Server Tutorial

Transactions — Complete Guide

Transactions — Complete Guide: free step-by-step lesson with examples, common mistakes, and interview tips — part of SQL Server Tutorial on Toolliyo Academy.

On this page

SQL Server Tutorial · Lesson 51 of 100

Transactions

SQL basics ✓QueriesAdvanced

Queries · 2 — JOINs · ~6 min · SQL — Transactions & Concurrency

What is this?

A transaction groups statements so they all commit or all roll back. BEGIN TRAN / COMMIT / ROLLBACK control that boundary.

Why should you care?

Creating an order and deducting stock must not leave half-done work if the second step fails.

See it live — copy this example

Run in SQL Server Management Studio (SSMS) or Azure Data Studio.

USE DataVerse;
BEGIN TRY
    BEGIN TRAN;
    UPDATE dbo.Accounts SET Balance = Balance - 100 WHERE AccountId = 1;
    UPDATE dbo.Accounts SET Balance = Balance + 100 WHERE AccountId = 2;
    COMMIT;
END TRY
BEGIN CATCH
    IF @@TRANCOUNT > 0 ROLLBACK;
    THROW;
END CATCH;

What happened?

  • Both balance updates succeed together or neither keeps changes.
  • CATCH rolls back if anything throws mid-way.

Practice next

  1. Seed two Accounts with known balances.
  2. Run the transfer transaction.
  3. Force an error after the first UPDATE and confirm rollback.
  4. Add an INSERT into a TransferAudit table inside the tran.
  5. Nest a savepoint (covered later concepts).

Remember

Transactions make multi-step changes atomic. COMMIT finishes; ROLLBACK undoes. Always handle errors with rollback.

Checkout must be atomic

DataVerse checkout writes order + decreases stock in one tran.

Outcome: No order without stock movement, and the reverse.

Interview prep for this lesson

Practice these questions aloud after reading—each links to a full structured answer.

Mid PDF Detailed
What are the differences between SQL and NoSQL databases?
Short answer: SQL Databases (Relational Databases): These are structured databases that use Structured Query Language (SQL) for defining and manipulating data. Explain a bit more They store data in tables with rows and c…
Mid PDF Detailed
Query Performance:?
Short answer: Use EXPLAIN or QUERY PLAN to analyze query execution times and identify slow queries. Track metrics like response time, execution time, and query throughput. Real-world example (ShopNest) ShopNest adds an i…
Mid PDF Detailed
Start with 1NF: Ensure that the table has no repeating groups or arrays, and each?
Short answer: record has a unique identifier. Real-world example (ShopNest) Product and Category are separate tables (normalized). The order line stores product id + price snapshot—not a giant duplicated product blob. Sa…
Junior PDF Detailed
Define Roles: Define different roles based on business requirements (e.g., admin,?
Short answer: Define Roles: Define different roles based on business requirements (e.g., admin,? is a common interview topic in SQL & Databases. Give a clear definition, then one concrete example. Say this in the int…
Mid PDF Detailed
Slower Queries: Fragmented indexes cause the database engine to read more data?
Short answer: pages, slowing down query performance. Real-world example (ShopNest) ShopNest adds an index on Orders(CustomerId, CreatedAt) because “my recent orders” is queried constantly. Say this in the interview Defin…
Questions on this lesson 0

Sign in to ask a question or upvote helpful answers.

No questions yet — be the first to ask!

SQL Server Tutorial
Course syllabus

SQL Server Tutorial

SQL — Foundations
SQL — SQL Queries & Clauses
SQL — Joins & Relationships
SQL — Indexing & Performance
SQL — Stored Procedures & Functions
SQL — Transactions & Concurrency
SQL — Advanced SQL Server
SQL — Security & High Availability
SQL — 2022 & Cloud
SQL — Real-World Projects
Toolliyo Assistant
Ask about tutorials, ebooks, training, pricing, mentor services, and support. I use public site content only—not admin or internal tools.

care@toolliyo.com

Need callback? Share your details