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

Cách xóa một hàng trong oracle

Hướng dẫn SQL này cung cấp giải thích, ví dụ về Xóa khỏi bảng trong Oracle

Xóa khỏi bảng được sử dụng trong Oracle Sql để xóa các hàng trong bảng. Nó là một câu lệnh DML (Ngôn ngữ thao tác dữ liệu). Nó được sử dụng để xóa tập hợp con của các hàng hiện có hoặc tất cả các hàng hiện có khỏi bảng.

Đây là cú pháp xóa trong Oracle

Ở đây bảng là tên bảng và điều kiện chỉ định các hàng sẽ bị xóa và nó bao gồm các cột, truy vấn con và biểu thức

Các điểm quan trọng.

  • Câu lệnh Delete yêu cầu một khóa trên bảng
  • Chúng tôi cần thực hiện cam kết thay đổi vĩnh viễn ngày (cam kết;)
  • Chúng tôi có thể sử dụng lệnh rollback để hoàn tác các thay đổi của câu lệnh xóa (rollback;)
  • nếu kích hoạt xóa được xác định, nó sẽ được kích hoạt cho mỗi hàng bị xóa
  • nếu bạn muốn biết có bao nhiêu hàng sẽ bị xóa khỏi câu lệnh xóa, thì trước tiên bạn có thể kích hoạt câu lệnh select với mệnh đề where tương tự để tìm ra số hàng

Hãy xem một vài cách để sử dụng câu lệnh DELETE

XÓA các hàng cụ thể khỏi bảng hoặc Làm cách nào để xóa bản ghi khỏi Oracle

Giả sử chúng ta muốn xóa các hàng có tên cột ='JOHN'

delete from emp where name='JOHN';
commit;

or 
delete from emp where name='JOHN';
rollback;

hoặc

Giả sử chúng ta muốn xóa một bộ phận khỏi bảng ghi nợ

delete from dept where dept_no= 10;
commit;

Các câu lệnh này sẽ xóa tất cả các hàng có chứa giá trị cột cụ thể đó. Sau khi hoàn thành câu lệnh xóa, nó sẽ hiển thị có bao nhiêu hàng bị xóa. chúng tôi cần thực hiện cam kết thực hiện các thay đổi vĩnh viễn.

Nếu không có hàng nào bị xóa, nó sẽ hiển thị 0 hàng đã bị xóa.

XÓA TẤT CẢ các hàng khỏi bảng trong Oracle hoặc Làm cách nào để xóa tất cả các bản ghi khỏi bảng

Giả sử chúng ta muốn xóa tất cả các hàng khỏi ví dụ bảng, thì câu lệnh sẽ là

Delete from example;

delete from employee;

delete from fnd_users;
commit;

Nó sẽ xóa tất cả các hàng khỏi bảng oracle và in ra bao nhiêu hàng bị xóa, thực sự là số lượng của bảng.

Thao tác này không đặt lại hình mờ Cao của bảng. và nó sử dụng tính năng hoàn tác. Bạn có thể muốn sử dụng bảng Truncate trong lệnh Oracle để đặt lại HWM (Hình mờ cao) và thực hiện hoàn tác ít hơn nhiều so với lệnh xóa

XÓA các hàng khỏi bảng dựa trên truy vấn con trong Oracle

Câu lệnh Delete có thể được sử dụng với một truy vấn con để xóa các hàng

Giả sử chúng ta muốn xóa các hàng trong Emp dựa trên tên dept trong bảng dept, thì câu lệnh delete sẽ giống như

delete from emp where dept_id = (select dept_id from dept where dept_name='SALES');
commit;

Câu lệnh trên trước tiên sẽ tìm dept_id từ bảng dept nơi dept_name là doanh số bán hàng. và sau đó nó cấp dept_id cho câu lệnh xóa cho bảng emp

XÓA các hàng khỏi bảng bằng mệnh đề TỒN TẠI / KHÔNG TỒN TẠI

Đây là một hình thức xóa khác chỉ sử dụng truy vấn con. Điều này được sử dụng khi bạn muốn so sánh hai bảng để xóa dữ liệu

Giả sử bạn muốn xóa các bản ghi khỏi bảng ghi nợ khi không có nhân viên nào

delete from
FROM dept d
WHERE NOT EXISTS
(SELECT * FROM emp e
WHERE d.dept_id
= e.dept_id);
commit;

Tôi hy vọng bạn thích nội dung này về Cách xóa một hàng trong oracle

Các bài viết có liên quan
Bảng thay thế trong Oracle:Bảng thay thế trong oracle được sử dụng để sửa đổi một cột, thả và thêm các ràng buộc, thay đổi kiểu dữ liệu của cột bảng, thay đổi các thông số lưu trữ bảng
Tạo Bảng Tạm thời Toàn cục trong Oracle
Câu lệnh cập nhật trong oracle:Chúng tôi sử dụng câu lệnh Cập nhật trong oracle để sửa đổi các hàng hiện có trong bảng oracle trong cơ sở dữ liệu oracle. Cập nhật có thể được thực hiện theo nhiều cách
DROP TABLE ORACLE:Tìm hiểu về drop table trong Oracle, Drop table nếu tồn tại trong Oracle, thả nhiều bảng trong một lệnh, thả các ràng buộc xếp tầng của bảng
Oracle Create table:Tables là đơn vị lưu trữ dữ liệu cơ bản trong Cơ sở dữ liệu Oracle. chúng tôi đề cập đến cách sử dụng lệnh tạo bảng của Oracle để tạo bảng có khóa ngoại / khóa chính
Tài liệu của Oracle về xóa
dòng xóa oracle:Kiểm tra bài đăng này về cách giải quyết ORA-02292 bằng cách sử dụng dòng xóa Oracle với ví dụ và giải thích chi tiế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. Ràng buộc duy nhất ORA-00001 bị vi phạm

  2. Lớp nhóm kết nối Oracle

  3. Hết thời gian chờ kết nối cho DriverManager getConnection

  4. Không thể sử dụng truy vấn LIKE trong Câu lệnh chuẩn bị sẵn của JDBC?

  5. Hàm NULLIF () trong Oracle