DML-Update Data

                                    ডাটার পরিবর্তন-Update Data

টেবিলের পুরাতন তথ্য মুছে নতুন ডাটা / Replace করা।এক বা একাধিক রো বা কলাম, আংশিক বা প্রয়োজনমত ডাটা পরিবর্তন/সংশোধন করাই হচ্ছে UPDATE.

 

Command Syntax 

Update table Name

Set …….

Condition….;

 

SELECT কমান্ড দিয়ে EMP টেবিলের ডাটা দেখে নেওয়া যাক।

 

SQL> SELECT * FROM EMP;

 

     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO

---------- ---------- --------- ---------- --------- ---------- ---------- ----------

      7369 SMITH      CLERK           7902 17-DEC-80        800                    20

      7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300         30

      7521 WARD       SALESMAN        7698 22-FEB-81       1250        500         30

      7566 JONES      MANAGER         7839 02-APR-81       2975                    20

      7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400         30

      7698 BLAKE      MANAGER         7839 01-MAY-81       2850                    30

      7782 CLARK      MANAGER         7839 09-JUN-81       2450                    10

      7788 SCOTT      ANALYST         7566 19-APR-87       3000                    20

      7839 KING       PRESIDENT            17-NOV-81       5000                    10

      7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0         30

      7876 ADAMS      CLERK           7788 23-MAY-87       1100                    20

      7900 JAMES      CLERK           7698 03-DEC-81        950                    30

      7902 FORD       ANALYST         7566 03-DEC-81       3000                    20

      7934 MILLER     CLERK           7782 23-JAN-82       1300                    10

 

14 rows selected.

 

আমরা সকল ডাটা দেখতে পেলাম, তবে বিশেষ করে লক্ষ করলাম EMPNO=7934 EMPLOYEE Gi  DEPTNO নং 10| আমরা এটিকে পরিবর্তন করে ২০ করতে চাই। নিচের মত করে কমান্ড দিতে হবে।

 

SQL> UPDATE EMP

  SET DEPTNO =20

  WHERE EMPNO=7934;

 

1 row updated.

 

SELECT কমান্ড দিয়ে পুনরয়  EMP টেবিলের ডাটা দেখে নেওয়া যাক।

 

SQL> SELECT * FROM EMP;

 

     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO

---------- ---------- --------- ---------- --------- ---------- ---------- ----------

      7369 SMITH      CLERK           7902 17-DEC-80        800                    20

      7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300         30

      7521 WARD       SALESMAN        7698 22-FEB-81       1250        500         30

      7566 JONES      MANAGER         7839 02-APR-81       2975                    20

      7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400         30

      7698 BLAKE      MANAGER         7839 01-MAY-81       2850                    30

      7782 CLARK      MANAGER         7839 09-JUN-81       2450                    10

      7788 SCOTT      ANALYST         7566 19-APR-87       3000                    20

      7839 KING       PRESIDENT            17-NOV-81       5000                    10

      7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0         30

      7876 ADAMS      CLERK           7788 23-MAY-87       1100                    20

      7900 JAMES      CLERK           7698 03-DEC-81        950                    30

      7902 FORD       ANALYST         7566 03-DEC-81       3000                    20

      7934 MILLER     CLERK           7782 23-JAN-82       1300                    20

 

14 rows selected.

 

লক্ষ করলাম EMPNO=7934 EMPLOYEE এর DEPTNO নং 10 পরিবর্তিত হয়ে 20 হয়েছে সুতরাং টেবিল আপডেট হয়েছে।

 

উপররে কমান্ডটি যদি কন্ডশিন বাদ দয়িে র্অথাৎ WHERE EMPNO=7934; না দয়িে প্রয়োগ করা হয় তবে কি হয়?

 

SQL> UPDATE EMP

  SET DEPTNO=20;

 

14 rows updated.

 

SELECT কমান্ড দিয়ে পুনরয় EMP টেবিলের ডাটা দেখে নেওয়া যাক।

 

     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO

---------- ---------- --------- ---------- --------- ---------- ---------- ----------

7369 SMITH      CLERK           7902 17-DEC-80        800                      20

7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300

7521 WARD       SALESMAN        7698 22-FEB-81       1250        500

7566 JONES      MANAGER         7839 02-APR-81       2975           

7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400

7698 BLAKE      MANAGER         7839 01-MAY-81       2850           

7782 CLARK      MANAGER         7839 09-JUN-81       2450           

7788 SCOTT      ANALYST         7566 19-APR-87       3000           

7839 KING       PRESIDENT            17-NOV-81       5000           

7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0

7876 ADAMS      CLERK           7788 23-MAY-87       1100           

7900 JAMES      CLERK           7698 03-DEC-81        950           

7902 FORD       ANALYST         7566 03-DEC-81       3000           

7934 MILLER     CLERK           7782 23-JAN-82       1300            


লক্ষ করলাম সকল  DEPTNO নং পরিবর্তিত হয়ে 20 হয়েছে সুতরাং টেবিল আপডেট হয়েছে।

SELECT কমান্ড দিয়ে পুনরয় EMPLOYEE টেবিলের ডাটা দেখে নেওয়া যাক।

 

SQL> SELECT * FROM EMPLOYEE;

 

EMPLOYEE_ID EMPLOYEE_N EMPLOYEE_ EMPLOYEE_NO

----------- ---------- --------- -----------

          1 15-dec-67                    100

          2 Heemel                       200

 

 

নিচের মত করে UPDATE কমান্ড প্রয়োগ করা হলো।

 

SQL> UPDATE EMPLOYEE

SET EMPLOYEE_NAME ='SHIMANTO'

WHERE EMPLOYEE_NO=200;

 

1 row updated.

 

ডাটার পরিবর্তন লক্ষ করা যাক।

 

SELECT কমান্ড দিয়ে পুনরয় EMPLOYEE টেবিলের ডাটা দেখে নেওয়া যাক।

SQL> SELECT * FROM EMPLOYEE; 

EMPLOYEE_ID EMPLOYEE_N EMPLOYEE_ EMPLOYEE_NO

----------- ---------- --------- -----------

          1 15-dec-67                    100

          2 SHIMANTO                     200

 

নিচের মত কন্ডিশন সহ UPDATE কমান্ড প্রয়োগ করা হলো।

 

SQL>UPDATE EMPLOYEE

  SET (EMPLOYEE_NAME,EMPLOYEE_DATE)=

  (SELECT EMPLOYEE_NAME,EMPLOYEE_DATE

  FROM EMPLOYEE

  WHERE EMPLOYEE_NO=200)

  WHERE EMPLOYEE_NO=100 

1 row updated.

 

SELECT কমান্ড দিয়ে পুনরয় EMPLOYEE টেবিলের ডাটা দেখে নেওয়া যাক।

 

SQL> SELECT * FROM EMPLOYEE;

 

EMPLOYEE_ID EMPLOYEE_N EMPLOYEE_ EMPLOYEE_NO

----------- ---------- --------- -----------

          1 SHIMANTO   11-SEP-00         100

          2 SHIMANTO   11-SEP-00         200

 

নিচে EMP টেবিলে আরো একটি UPDATE কমান্ড প্রয়োগ করা হলো।

 

SQL> UPDATE EMP

SET DEPTNO=55

WHERE DEPTNO=10

 

3 rows updated.

SELECT কমান্ড দিয়ে পুনরয় EMP টেবিলের পরিবর্তন দেখে নেওয়া যাক। ডিপার্টমেন্ট নং ১০ পরিবর্তিত হয়ে ৫৫ হয়েছে।

 

SQL> SELECT * FROM EMP;

 

     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO

---------- ---------- --------- ---------- --------- ---------- ---------- ----------

      7369 SMITH      CLERK           7902 17-DEC-80        800                    20

      7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300         30

      7521 WARD       SALESMAN        7698 22-FEB-81       1250        500         30

      7566 JONES      MANAGER         7839 02-APR-81       2975                    20

      7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400         30

      7698 BLAKE      MANAGER         7839 01-MAY-81       2850                    30

      7782 CLARK      MANAGER         7839 09-JUN-81       2450                    55

      7788 SCOTT      ANALYST         7566 19-APR-87       3000                    20

      7839 KING       PRESIDENT            17-NOV-81       5000                    55

      7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0         30

      7876 ADAMS      CLERK           7788 23-MAY-87       1100                    20

      7900 JAMES      CLERK           7698 03-DEC-81        950                    30

      7902 FORD       ANALYST         7566 03-DEC-81       3000                    20

      7934 MILLER     CLERK           7782 23-JAN-82       1300                    55

 

14 rows selected.

 

নিচে EMP টেবিলে আরো একটি UPDATE কমান্ড প্রয়োগ করা হলো।

 

SQL> UPDATE EMP

  SET COMM=500

  WHERE COMM IS NULL;

 

10 rows updated.

 

SELECT কমান্ড দিয়ে পুনরয় EMP টেবিলের ডাটা দেখে নেওয়া যাক।

 

SQL> SELECT * FROM EMP;

 

     EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO

---------- ---------- --------- ---------- --------- ---------- ---------- ----------

      7369 SMITH      CLERK           7902 17-DEC-80        800        500         20

      7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300         30

      7521 WARD       SALESMAN        7698 22-FEB-81       1250        500         30

      7566 JONES      MANAGER         7839 02-APR-81       2975        500         20

      7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400         30

      7698 BLAKE      MANAGER         7839 01-MAY-81       2850        500         30

      7782 CLARK      MANAGER         7839 09-JUN-81       2450        500         10

      7788 SCOTT      ANALYST         7566 19-APR-87       3000        500         20

      7839 KING       PRESIDENT            17-NOV-81       5000        500         10

      7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0         30

      7876 ADAMS      CLERK           7788 23-MAY-87       1100        500         20

      7900 JAMES      CLERK           7698 03-DEC-81        950        500         30

      7902 FORD       ANALYST         7566 03-DEC-81       3000        500         20

      7934 MILLER     CLERK           7782 23-JAN-82       1300        500         10

 

14 rows selected.

টেবিলের পরিবর্তন লক্ষ করা গেল।

কোন মন্তব্য নেই:

একটি মন্তব্য পোস্ট করুন