دستور UPDATE این امکان را به شما می‌دهد تا بتوانید، داده‌های مورد نظرتان را تغییر دهید. برای مثال از جدول PERSON استفاده می‌کنیم.

SELECT *
FROM PERSON;
NAME       FAMILY                AGE  ID_PERSON
---------- ------------ ------------ -----------
MOHAMMAD GHAFFARI 23 1
MAHDI GHAFFARI 21 2
MOHSEN GHAFFARI 19 3
FARZAD KARKHANI 25 4
EHSAN JALALI 23 5

حال با استفاده از دستور UPDATE، افرادی را که نام آن‌ها EHSAN می‌باشد را تغییر، و ALI را جایگزین آن می‌نماییم.

UPDATE PERSON
SET NAME = 'ALI';
WHERE NAME = 'EHSAN';
1 row updated.

جدول PERSON را مشاهده کنید.

SELECT *
FROM PERSON;
NAME       FAMILY                AGE  ID_PERSON
---------- ------------ ------------ -----------
MOHAMMAD GHAFFARI 23 1
MAHDI GHAFFARI 21 2
MOHSEN GHAFFARI 19 3
FARZAD KARKHANI 25 4
ALI JALALI 23 5

دستور UPDATE افرادی را که نام آن‌ها EHSAN می‌باشد را پیدا، سپس به جای آن ALI را قرار داده‌است.

مثال۲:

می‌خواهیم نام افرادی را که فامیل آن‌ها GHAFFARI است را تغییر داده، و به جای آن‌ها، نام REZA را قرار دهیم.

UPDATE PERSON
SET NAME = 'REZA'
WHERE FAMILY = 'GHAFAFRI';

2 rows updated.

عمل UPDATE انجام شد. حال جدول PERSON را مشاهده کنید.

SELECT *
FROM PERSON;
NAME       FAMILY                AGE  ID_PERSON
---------- ------------ ------------ -----------
REZA GHAFFARI 23 1
REZA GHAFFARI 21 2
REZA GHAFFARI 19 3
FARZAD KARKHANI 25 4
ALI JALALI 23 5

همان‌گونه که انتظارش را داشتیم، به جای نام تمامی افرادی که FAMILY آن‌ها GHAFAFRI بود، REZA قرار گرفته است.

مثال۳:

فرض کنید شما فروشگاهی دارید که، قیمت اجناس آن را در جدول ORDERS درج کرده‌اید. محتوای جدول ORDERS را مشاهده کنید.

SELECT *
FROM ORDERS;
   PARTNUM  DATE          COST
---------- ------------- -----------
56 02-MAY-90 500
58 11-APR-90 750
96 14-APR-91 653
23 27-JUN-90 80
66 10-MAY-89 350
45 04-MAY-89 652
85 10-MAY-91 468
7 rows selected.

اینک بنا به تورم و بالا رفتن قیمت اجناس، مجبور به تغییر قیمت‌ها و درج قیمت جدید می‌باشید. برای رفع این مشکل بهترین راه استفاده از دستور UPDATE است.

UPDATE ORDERS
SET COST = (COST*20/100) + COST;
7 rows updated.

حال تغییرات اعمال گردیده است. برای مشاهده تغییرات دستور زیر را تایپ نمایید.

SELECT *
FROM ORDERS;
   PARTNUM  DATE          COST
---------- ------------- -----------
56 02-MAY-90 600
58 11-APR-90 900
96 14-APR-91 784
23 27-JUN-90 96
66 10-MAY-89 420
45 04-MAY-89 782
85 10-MAY-91 562
7 rows selected.

همان‌گونه که در نتایج فوق مشاهده کردید تمام داده‌های فیلد COST تغییر کرده‌اند.