oracle怎么刪除一個表中的數據
一.delete語句
(1)有條件刪除
語法格式:delete [from] table_name [where condition];
如:刪除users表中的userid為'001'的數據:delete from users where userid='001';
(2)無條件刪除整個表數據
語法格式:delete table_name;
如:刪除user表中的所有數據:delete users ;
二、Truncate語句
使用Truncate語句是刪除表中的所有記錄。
語法格式: Truncate [table] table_name;
(1)刪除所有記錄不保留記錄占用空間
Truncate [table] table_name [drop storage];
如:刪除users表中的所有數據并不保存占用空間: Truncate table users drop storage; 由于默認使用drop storage關鍵字,所以可以省略 drop storage;
(2)刪除所有記錄保留記錄占用空間
Truncate [table] table_name [reuse storage];
如:刪除users表中的所有數據并保存占用空間: Truncate table users reuse storage;
怎么在oracle中刪除數據庫中的表
1. 刪除無任何數據對象的表空間:
首先使用PL/SQL界面化工具,或者使用oracle自帶的SQL PLUS工具,連接需要刪除的表空間的oracle數據局庫。
確認當前用戶是否有刪除表空間的權限,如果沒有 drop tablespace,請先用更高級的用戶(如sys)給予授權或者直接用更高級的用戶。
用drop tablespace xxx ,刪除需要刪除的表空間。
2. 刪除有任何數據對象的表空間
使用drop tablespace xxx including contents and datafiles;來刪除表空間。
3. 注意事項:
如果drop tablespace語句中含有datafiles,那datafiles之前必須有contents關鍵字,不然會提示ora-01911錯誤
oracle刪除數據語句怎么寫
Oracle數據刪除語句
--查看當前SCN數值
SELECT dbms_*_system_change_number from dual;
--Scn與時間的對應關系
SELECT to_char(sysdate,'yyyy-mm-dd hh24:mi:ss', to_char(DBMS_*_SYSTEM_CHANGE_NUMBER) AS SCN from dual;
--通過時間flashback query數據
*
SELECT * FROM * AS OF TIMESTAMP TO_TIMESTAMP('2013-11-17 10:25:17', 'YYYY-MM-DD HH:MI:SS');
--通過SCN 閃回數據
SELECT * FROM * AS OF SCN 23565583;
--閃回表中誤刪除的數據
flashback table tablename to timestamp xxx
flashback table tablename to scn xxx
--閃回表前提條件
--該表需開啟行移動功能,可在恢復之前打開再執行恢復
alter table test enable row movement;
ORACLE 刪除表中數據的sql語句求助
正確答案:
delete from rt_switch_monitor
where alarm_state = '165'
and cur_value = '1'
and parent_description = '開封地區/明河變/斯威夫特E40電源/明河變斯威夫特E40電源';
commit;
按照你的寫法并糾正你的錯誤語句,應該為:
delete from rt_switch_monitor t
where *_state = '165'
or *_value = '1'
*_description in
(select *_description from rt_switch_monitor t where *_description = '開封地區/明河變/斯威夫特E40電源/明河變斯威夫特E40電源');
記得給我分!!!要知道我給別人培訓,收的費用是相當高的(給你糾正只收懸賞分)
轉載請注明出處華閱文章網 » oracle刪表語句