Oracle【增刪改&數據的備份】

增刪改的SQL語句執行完畢後,不會立馬進行數據的寫入數據庫(這時數據在內存中),須要手動對數據進行提交(commit),若是數據出問題,能夠使用回滾。
主鍵:非空惟一的
 --在一張表中,某字段值是非空惟一的,將此字段設置爲主鍵。
 --惟一的標識一條數據
[增長數據源]
insert into 表名(字段名1,字段名2,字段名2...)values(值1,值2,值3...);
 --注意1:主鍵必須有值,容許爲空的字段能夠給值
 --注意2:插入語句表名後跟的字段名爲賦值的字段,值和字段必須一一對應。
 --注意3:若是是全字段插入,能夠缺省字段名部分。insert into 表名 values(值1,值2,值3...);數據庫

1 --在dept表中新增部門信息:編號:50,名稱;404boom,地址:博客園
2 insert into dept(deptno,dname,loc)values(50,'404boom','博客園');
3 --全字段插入(能夠不寫字段名)
4 insert into dept values(80,'404boom','博客園');
5 insert into dept(deptno,dname,loc)values(60,null,'博客園');
6 --在dept表中新增一條數據,只有部門編號和部門名稱,沒有地址
7 insert into dept(deptno,dname)values(70,'404boom');

[刪除數據(語法)]
delete from 表名; --刪除表中的全部數據
truncate table 表名;清空表中的全部記錄,效率高於delete
delete from 表名 where 條件; --進行條件的篩選刪除,【須要進行提交才能夠真正的從庫裏刪除】spa

1 --清空表中數據
2 delete from dept;
3 --清空表中數據
4 truncate from dept;
5 --刪除表中部門編號爲50的數據
6 delete from dept where deptno=50;

[更新數據]
update 表名 set 字段名=新值,字段名=新值...(所有更新爲新的值)
update 表名 set 字段名=新值,字段名=新值...where 條件(符合條件的數據更新)code

1 --更新部門編號爲50的信息
2 update dept set deptno=70,dname='boom',loc='個人博客' where deptno=50;

[數據備份]
注意:只會備份表結構和表的數據,約束條件並不會備份
表級別備份
 --所有備份:create table 新的表名 as select * from 備份的表名
 --部分備份:create table 新的表名 as select 字段名1,字段名2...from 備份的表名
--數據的總體插入
 --insert into 表名 select * from 表名;
 --注意:查詢語句結果的字段數據必須和插入表名的字段數量一致,類型一致。blog

1  create table deptBak as select * from dept;
2    --選擇性的備份
3   create table deptBak2 as select deptno,dname from dept;
4   insert into deptBak select * from dept;
相關文章
相關標籤/搜索