ప్రధాన కంటెంట్‌కు వెళ్లండి
మాడ్యూల్ 8 · 4లో పాఠం 2కోర్సులో 30/57~10 min
మాడ్యూల్ పాఠాలు (2/4)

నవీకరించడం మరియు తొలగించడం: UPDATE మరియు DELETE

UPDATE ఇప్పటికే ఉన్న అడ్డు వరుసలను సవరించింది; DELETE వాటిని తీసివేస్తుంది. ఇద్దరూ పంచుకుంటారు అదే, ప్రాథమిక, సువర్ణ నియమం: WHERE నిబంధన ఏ వరుసలను నిర్ణయిస్తుంది తాకడానికి. దాన్ని మర్చిపోవడం అంటే మొత్తం పట్టికని సవరించడం/తొలగించడం.

నవీకరణ

SQL
UPDATE tabella
SET    colonna1 = nuovo_valore,
       colonna2 = altra_espressione
WHERE  condizione;

ఉదాహరణలు:

SQL
-- Aumenta del 10% i prezzi di tutti i prodotti della categoria 5 (Computer):
UPDATE products
SET    price = price * 1.10
WHERE  category_id = 5;

-- Aggiorna due colonne contemporaneamente:
UPDATE orders
SET    status     = 'shipped',
       shipped_at = NOW()
WHERE  id = 12;

SET col = espressione: వ్యక్తీకరణ ** అడ్డు వరుస యొక్క కరెంట్‌ను సూచించవచ్చు విలువలు** (price * 1.10), మరియు NOW(), NULL, లేదా ఉప ప్రశ్నలు.

తొలగించు

SQL
DELETE FROM tabella
WHERE  condizione;

ఉదాహరణలు:

SQL
-- Cancella tutte le recensioni con rating < 3:
DELETE FROM reviews
WHERE  rating < 3;

-- Cancella un ordine specifico:
DELETE FROM orders WHERE id = 999;

ఇక్కడ కూడా తిరిగి వస్తున్నాను

INSERT, UPDATE మరియు DELETE వంటివి కూడా RETURNINGని అంగీకరిస్తాయి కాబట్టి మీకు తెలుసు వారు ఏమి చేసారు:

SQL
DELETE FROM reviews
WHERE  rating < 3
RETURNING id, customer_id, rating;

తొలగించబడిన/సవరించిన వాటిని ఒకే షాట్‌లో లాగిన్ చేయడానికి ఉపయోగపడుతుంది.

విదేశీ కీలు మరియు తొలగింపు

విదేశీ కీ ద్వారా మరొక పట్టిక ద్వారా సూచించబడిన అడ్డు వరుసను తొలగించడానికి ప్రయత్నిస్తోంది లోపాన్ని ఉత్పత్తి చేస్తుంది:

SQL
DELETE FROM customers WHERE id = 1;
-- ERROR: update or delete on table "customers" violates foreign key constraint
-- on table "orders"

పరిష్కారాలు: ముందుగా పిల్లల వరుసలను తొలగించండి లేదా దీనితో FKని నిర్వచించండి ON DELETE CASCADE మీరు పట్టికను సృష్టించినప్పుడు (మేము దీన్ని ఇందులో కవర్ చేస్తాము తదుపరి DDL పాఠం).

మీ వంతు

వ్యాయామం#sql.m8.l2.e1
ప్రయత్నాలు: 0లోడ్ అవుతోంది...

వర్గం 5 (కంప్యూటర్)లోని ప్రతి ఉత్పత్తి ధరను 10% పెంచండి. ఒకే అప్‌డేట్ స్టేట్‌మెంట్.

ఎడిటర్ లోడ్ అవుతోంది…
సూచనను చూపించు

SET యొక్క కుడి వైపున ఉన్న వ్యక్తీకరణ నిలువు వరుసను సూచించగలదు: ధర * 1.10.

3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది

వ్యాయామం సమీక్షించండి

వ్యాయామం#sql.m8.l2.e2
ప్రయత్నాలు: 0లోడ్ అవుతోంది...

3 కంటే తక్కువ రేటింగ్ ఉన్న ప్రతి సమీక్షను తొలగించండి (చాలా ప్రతికూల సమీక్షలు).

ఎడిటర్ లోడ్ అవుతోంది…
సూచనను చూపించు

ఎక్కడ రేటింగ్ < 3.

3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది