增刪改的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;