The Life Starter
0 of 6 complete0%
Course Library · Lesson 2 of 6
Digital · Guided lesson

Write a targeted UPDATE

About 16 minutes · 4 reading + 12 practice and checks
Time includes reading, practice, and questions. Extra videos or further study are optional.
See this course’s project requirements

A local SQLite seat-transfer exercise with before/after totals, an all-or-nothing update, a deliberately rejected change and rollback evidence.

Keep your working files in your own notebook or software. Save a private description, checklist, and work link in My Proof.

What to include

  • A seat-transfer contract with total 10 preserved.
  • Two targeted updates with a declared completion boundary.
  • A committed all-or-nothing transfer record.
  • A 5, B 5 and no active transaction after rejection.
  • A parameterized update/lookup record with known-ID validation.
  • A checked seat-transfer transaction packet.

Review and revise

Use these criteria to check your work and choose what to improve.

  • The implementation or declared simulation follows the supplied contract and retains inspectable original inputs.
  • Normal, boundary and rejected cases are recorded with expected versus observed results.
  • The changed case has a correct explanation and does not rely on hidden state.
  • The project includes source, outputs, instructions and honest tool, privacy and verification limits.
Open the full course project
Want more background?
Before you begin

The idea in everyday life

For A 8, B 2, execute UPDATE seats SET quantity=quantity-3 WHERE group_id='A' inside a practice transaction; it changes A to 5 while B leaves 2 until the second update.

The idea

WHERE chooses the rows to modify. Omitting it can change every row. The provided SQL uses quantity=quantity-? with group_id=? so only the declared source is affected.

Follow along

Write a targeted UPDATE — original worked practice

WHERE chooses the rows to modify. Omitting it can change every row. The provided SQL uses quantity=quantity-? with group_id=? so only the declared source is affected.

For A 8, B 2, execute UPDATE seats SET quantity=quantity-3 WHERE group_id='A' inside a practice transaction; it changes A to 5 while B leaves 2 until the second update.

  1. 1. Step 1

    Locate Set versus WHERE in the supplied statement.

    You should see: Set names quantity change; WHERE selects A.

    This keeps the rule and its observable result together.

  2. 2. Step 2

    Trace one statement’s intermediate state.

    You should see: A 5, B 2, total 7 is not yet a complete transfer.

    This keeps the rule and its observable result together.

  3. 3. Step 3

    Trace a paired recipient update.

    You should see: B becomes 5 and total returns 10.

    This keeps the rule and its observable result together.

  4. 4. Step 4

    Explain why the intermediate state must not be committed alone.

    You should see: Two targeted updates with a declared completion boundary.

    This keeps the rule and its observable result together.

Now change one thing

A starts 8; targeted subtraction is 2. Enter intermediate A.

Your work

What to finish

Two targeted updates with a declared completion boundary.

Common mistake

Watch for this

Omitting the WHERE clause and changing every seat group instead of the named group.

How can I tell I understand it?

Explain and demonstrate the required distinction: WHERE chooses the rows to modify. Omitting it can change every row. The provided SQL uses quantity=quantity-? with group_id=? so only the declared source is affected. Show a changed input and the expected result without weakening this contract.

Try 3 questions

Quick knowledge check

Answer all 3 questions. Get at least 2 right and the lesson completes automatically.

Not yet passed

You’ll get an explanation for each answer. Signed in? Your results save to your account.

1What does WHERE group_id='A' protect?
2What is the intermediate total after only A loses 3?
3What can an UPDATE without WHERE affect?
0 of 3 answeredApply the lesson to a short question, then review the explanation.
2
Finish this lesson

Pass the check. We’ll save the progress.

Answer all 3 questions above and get at least 2 right. You can review the explanations and try again.

Go to the knowledge check
Tools, templates, and lesson sources

Tools and templates

Tools open in a new tab so you can keep your place here.

Sources and further reading

Explore the references behind this lesson.

www.sqlite.org — lang_update.html
Source & access notes · checked 2026-10-01

Relevant documented module/API behavior inspected during expansion authoring; actual execution evidence is recorded separately. No grant eligibility is established.

Access: Official page retrieved with the web reader on 2026-10-01. Documentation reading does not certify execution in every native tool or browser.

Reuse: Original local practice files, fictional data, worked examples and questions. Concepts paraphrased and linked; source exercises are not copied.

docs.python.org — sqlite 3.html
Source & access notes · checked 2026-10-01

Relevant documented module/API behavior inspected during expansion authoring; actual execution evidence is recorded separately. No grant eligibility is established.

Access: Official page retrieved with the web reader on 2026-10-01. Documentation reading does not certify execution in every native tool or browser.

Reuse: Original local practice files, fictional data, worked examples and questions. Concepts paraphrased and linked; source exercises are not copied.

Report a problem with this lesson

Tell us what went wrong. Please leave out personal information and private project contents.

No sign-in needed.