Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Cách cập nhật bảng trong oracle

Hướng dẫn SQL này cung cấp giải thích, ví dụ cho câu lệnh Cập nhật trong oracle

Câu lệnh cập nhật trong oracle được sử dụng để cập nhật các hàng hiện có trong bảng. Nó là một câu lệnh DML. Ngôn ngữ thao tác dữ liệu đứng DML. Chúng ta có thể sử dụng câu lệnh này để cập nhật các hàng cụ thể, tập hợp các hàng hoặc tất cả các hàng trong bảng.

Cú pháp được cung cấp bên dưới

Bảng :Đây là tên bảng cần được cập nhật
cột :đó là một cột hoặc nhiều cột trong bảng cần được cập nhật giá trị
:Đây là giá trị của cột được cập nhật. chúng ta cũng có thể sử dụng truy vấn con để nhận giá trị đó
Điều kiện :Đây là điều kiện quyết định những gì tất cả các hàng sẽ được cập nhật. Nó có thể bao gồm tên cột, truy vấn con biểu thức và toán tử so sánh

Điểm quan trọng
1) Câu lệnh cập nhật sau khi hoàn thành sẽ hiển thị số lượng hàng được cập nhật trừ khi bạn đã tắt phản hồi đã đặt
2) Nếu không có hàng nào được cập nhật, nó sẽ hiển thị 0 hàng được cập nhật
3) Các thay đổi được thực hiện là hiển thị trong phiên của bạn và nó không hiển thị với phiên khác trong cơ sở dữ liệu oracle
4) Bạn cần thực hiện “commit;” tuyên bố để thực hiện các thay đổi vĩnh viễn trong cơ sở dữ liệu hoặc "khôi phục;" để khôi phục các thay đổi đã thực hiện
5) trước tiên bạn nên thực hiện cùng điều kiện where với select để tìm ra số hàng và số hàng sẽ được cập nhật trước khi phát hành câu lệnh cập nhật
6) Nếu bạn đang nhắm mục tiêu cho các hàng đơn, hãy sử dụng khóa chính trong oracle nếu có thể

SQL> select * from emp where EMPNO=7844;

EMPNO ENAME JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- --------------- ---------- ----------
DEPTNO
----------
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0
30

SQL> update emp set SAL=15000 where EMPNO=7844;

1 row updated.

SQL> select * from emp where EMPNO=7844;

EMPNO ENAME JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- --------------- ---------- ----------
DEPTNO
----------
7844 TURNER SALESMAN 7698 08-SEP-81 15000 0
30

SQL> commit;

Commit complete.

Cập nhật câu lệnh bằng truy vấn con

Chúng tôi cũng có thể sử dụng truy vấn con bên trong câu lệnh cập nhật.

SQL> select * from emp;

EMPNO ENAME JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- --------------- ---------- ----------
DEPTNO
----------
7902 FORD ANALYST 7566 03-DEC-81 3000
20

7934 MILLER CLERK 7782 23-JAN-82 1300
10

2 rows selected.

SQL> update emp set sal=(select sal from emp where empno=7934) where EMPNO=7902;

1 row updated.

SQL> select * from emp;

EMPNO ENAME JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- --------------- ---------- ----------
DEPTNO
----------
7902 FORD ANALYST 7566 03-DEC-81 1300
20

7934 MILLER CLERK 7782 23-JAN-82 1300
10

2 rows selected.

SQL> commit;

Commit complete.

Cập nhật câu lệnh không có mệnh đề where

Bạn có thể cập nhật tất cả các hàng trong bảng bằng cách không chỉ định bất kỳ mệnh đề where trong câu lệnh cập nhật

Update FND_USER set end_date='1-JUN-2018'  ;

Câu lệnh trên sẽ cập nhật tất cả các hàng trong bảng FND_USER

Cập nhật câu lệnh với nhiều cột

Bạn có thể chỉ định nhiều cột trong cùng một câu lệnh cập nhật

Update FND_USER set end_date='1-JUN-2018' , password='' ;

Câu lệnh trên sẽ cập nhật tất cả các hàng trong bảng FND_USER với end_date được chỉ định và vô hiệu tất cả mật khẩu

Các bài viết có liên quan

Câu lệnh INSERT trong Oracle
Câu lệnh xóa khỏi bảng trong Oracle
Ví dụ về tạo bảng trong Oracle
Bảng thay đổi trong Oracle
bảng thay đổi thêm cột oracle
Tài liệu Oracle về Cập nhật


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cơ sở dữ liệu trình quản lý gói RPM GI 19c

  2. PL / SQL - Ví dụ về lỗi ứng dụng nâng cao

  3. GROUP BY với MAX (DATE)

  4. Sử dụng Oracle JDeveloper 12c với Cơ sở dữ liệu Oracle, Phần 2

  5. Sửa lỗi “ORA-01789:khối truy vấn có số cột kết quả không chính xác”