Oracle
 sql >> база данни >  >> RDS >> Oracle

Как да изтриете ред в oracle

Този урок за SQL предоставя обяснения, примери за Изтриване от таблицата в Oracle

Изтриване от таблица се използва в Oracle Sql за изтриване на редовете в таблицата. Това е изявление на DML (език за манипулиране на данни). Използва се за изтриване на подмножество от съществуващи редове или всички съществуващи редове от таблицата.

Ето синтаксиса на изтриване в Oracle

Тук таблицата  е името на таблицата и условието, което определя редовете, които трябва да бъдат изтрити    и това се състои от колони, подзаявки и изрази

Важни точки.

  • Изтриването изисква заключване на таблицата
  • Трябва да направим ангажимент, за да променим за постоянно датата  (commit;)
  • Можем да използваме командата за връщане назад, за да отменим промените в изтриването на оператора ( rollback;)
  • ако са дефинирани тригери при изтриване, той ще се задейства за всеки изтрит ред.
  • ако искате да разберете колко реда ще бъдат изтрити от оператора за изтриване, тогава можете първо да задействате оператора select със същата клауза where, за да разберете броя на редовете.

Нека вземем няколко начина да използваме израза DELETE

ИЗТРИВАНЕ на конкретни редове от таблицата или Как да изтрия запис от Oracle

Да предположим, че искаме да изтрием редовете, където име на колона name=’JOHN’

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

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

или

Да предположим, че искаме да изтрием отдел от таблицата на отделите

delete from dept where dept_no= 10;
commit;

Тези изрази ще изтрият всички редове, съдържащи тази конкретна стойност на колоната. След като изразът за изтриване завърши,  той ще покаже колко реда са изтрити. трябва да изпълним ангажимент за постоянно извършване на промените.

Ако няма изтрити редове, ще се покаже 0 изтрити реда.

ИЗТРИВАНЕ НА ВСИЧКИ редове от таблицата в Oracle или Как да изтрия всички записи от таблицата

Да предположим, че искаме да изтрием всички редове от примера на таблицата, тогава изразът ще бъде

Delete from example;

delete from employee;

delete from fnd_users;
commit;

Той ще изтрие всички редове от таблицата на Oracle и ще отпечата колко реда са изтрити, което всъщност е броят на таблицата.

Това не нулира високия воден знак на таблицата. и използва отмяна. Може да искате да използвате Truncate table в командата на Oracle, която нулира HWM (висок воден знак) и прави много по-малко отмяна, отколкото изтриване.

ИЗТРИВАНЕ  на редове от таблицата въз основа на подзаявка в Oracle

Операторът Delete може да се използва с подзаявка за изтриване на редовете

Да предположим, че искаме да изтрием редовете в Emp въз основа на името на dept в таблицата dept, тогава изявлението за изтриване ще бъде като

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

Горното изявление първо ще търси dept_id от таблицата dept, където dept_name е продажби. и след това подава dept_id към оператора delete за таблицата emp

ИЗТРИВАНЕ  на редове от таблицата с помощта на клауза EXISTS/NOT EXISTS

Това е друга форма на изтриване само с помощта на подзаявка. Това се използва, когато искате да сравните две таблици, за да изтриете данните

Да предположим, че искате да изтриете записи от таблицата dept, където няма служител

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

Надявам се да ви хареса това съдържание за Как да изтриете ред в oracle

Сродни статии
Промяна на таблица в Oracle :Промяна на таблица в Oracle се използва за промяна на колона, пускане и добавяне на ограничения, промяна на типа на данните на колоната на таблицата, промяна на параметрите за съхранение на таблицата
Създаване на глобална временна таблица в Oracle
Update statement в oracle :Използваме инструкцията Update в oracle, за да модифицираме съществуващите редове в таблицата на oracle в базата данни на oracle. Актуализация може да се изпълни по няколко начина
DROP TABLE ORACLE:Научете повече за пускане на таблица в Oracle, пускане на таблица, ако съществува в Oracle, пускане на няколко таблици в една команда, пускане на каскадни ограничения на таблицата
Oracle Създаване на таблица:Таблици са основната единица за съхранение на данни в база данни на Oracle. описваме как да използвате командата за създаване на таблица на Oracle за създаване на таблица с външен ключ /първичен ключ
Документация на Oracle за изтриване
oracle delete cascade:Вижте тази публикация за това как да разрешите ORA-02292 с помощта на Oracle delete cascade с подробен пример и обяснение


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. хибернация диалект за оракул 12c

  2. Как да разберете кога таблицата на Oracle е актуализирана за последен път

  3. Как мога да използвам регулярен израз за разделяне на низ, като използвам низ като разделител?

  4. Функция TANH() в Oracle

  5. Външни таблици на Oracle