03數(shù)據(jù)的操作
01插入數(shù)據(jù)
語法:
insert into `表名` (字段名1,字段名2) values (值1,值2) , (值1,值2);
注意點:
- 如果你插入的值、備注有中文,那么中文一定要用單引號引起來,數(shù)據(jù)庫是不允許使用雙引號的。換句話說數(shù)據(jù)庫中的字符串要用單引號引起來。
- 插入數(shù)據(jù)既可以只插入一條數(shù)據(jù),也可以同時插入多條數(shù)據(jù)。
- 插入數(shù)據(jù),如果你寫字段名了。
insert
語句中的字段名可以按照數(shù)據(jù)庫默認的字段名順序(即表頭的默認順序)寫,也可以不按照。但是值的順序必須按照insert
語句中的字段名順序。 - 插入數(shù)據(jù)時,你可以插入所有的字段值,你也可以某些字段不插入值,前提是這些字段可以為空值。
- 對于自增屬性的字段,你可以插入具體值,也可以插入null或不插入,讓其自增。
- 插入數(shù)據(jù),如果你所有字段都插入值,并且是按照數(shù)據(jù)庫默認的字段順序(即表頭的默認順序)插入的。
insert
語句中的第一個括號可以省略不寫,即(字段名1,字段名2)
可以不寫。如果某個值是自增的,你不能省略,必須寫上null或者具體值,目的是占位。 - 對于有默認值的,你若想讓其自動填默認值,需要在值上寫
default
。
第六條舉例:
insert into `表名` values (null , 值2 , ...) ;
02更新(改)數(shù)據(jù)
語法:
update `表名` ste `字段名1` = 值1 , 字段名2 = 值2 [wherer條件];
說明:where條件決定你修改的數(shù)據(jù),符合where條件就修改,如果不加where條件就都修改,后果很嚴重,所以一定要注意。
例如:修改id為1的數(shù)據(jù)name為Tom。
update `student` ste `name` = Tom where id = 1;
03刪除數(shù)據(jù)
語法:
delete from `表名` [where條件];
04清空數(shù)據(jù)
語法:
truncate table `表名`;
truncate table 表名
與delete from 表名
表面上都把所有數(shù)據(jù)刪除了,但有本質(zhì)的區(qū)別:
前者相當于銷毀表,并且創(chuàng)建一個沒有數(shù)據(jù)的新表,插入數(shù)據(jù)從id=1開始,效率很高;后者相當于逐條便利delete刪除,再插入數(shù)據(jù)id從上次刪除的最后一個最大id+1,效率很低。
05復制表
語法一:
create table `新表` selct `字段` from `舊表`;
語法二:
create table `新表` like `舊表`;
區(qū)別:
語法一復制表和表中數(shù)據(jù),但是不復制主鍵,復制后新表沒有主鍵。
語法二只復制表的框架,復制主鍵,但不復制表中數(shù)據(jù)。