最近開始接觸oralce,整理了一下最近使用 pl/sql 常用到的一些sql命令
1.修改表中的資料
編寫查詢語句及條件,然後加上"FOR UPDATE","FOR UPDATE"是獲得OACLE的修改許可權,執行這條查詢語句,查詢出對應的記錄
select * from sys_svr FOR UPDATE
2.向一個表中新增欄位和註釋
alter table appr_control_info_ex add control_seq VARCHAR2(30); --新增欄位 comment on column appr_control_info_ex.control_seq is '辦事編號'; --新增註釋
3.修改欄位資料型別
alter table appr_item_rcv_stuff_sub modify SIZE_LIMIT NUMBER(10)
4.刪除表中欄位
alter table 表名 drop column 欄位名;
alter table APPR_CERT_RECEIVE drop column RECEIVE_UNIT_NAME;
5.知道一個欄位名,反向查詢包含這個欄位的表
如下,知道欄位名“IDENTITY_TYPE”,利用如下語句找到哪個表中含有這個欄位
SELECT * FROM all_tab_cols t WHERE t.owner = 'GD_BASE' AND t.column_name LIKE 'IDENTITY_TYPE%';
6.執行update操作時,如果sql語句底部沒有commit,則執行完後需要手動點選【提交】按鈕
另外執行sql語句時注意,要更新的資料跟資料庫中存在欄位是否完全一致
7.清空表資料
(1)delete from t
(2)truncate table t
區別:
delete是dml操作;truncate是ddl操作,ddl隱式提交不能回滾
truncate table t 執行效率更高,會回收表空間,delete from t執行效率慢,不會回收表空間