MySQL之資料操作
阿新 • • 發佈:2018-12-14
閱讀目錄
一 介紹
在MySQL管理軟體中,可以通過SQL語句中的DML語言來實現資料的操作,包括
- 使用INSERT實現資料的插入
- UPDATE實現資料的更新
- 使用DELETE實現資料的刪除
- 使用SELECT查詢資料。
二 插入資料 INSERT
1 2 3 4 5 6 7 8 9 10 11 |
#語法一: 按欄位進行插入
insert
into
表(欄位1,欄位2 ...)
values
(值1,值2 ...);
#語法二:按欄位順序插入
insert
into
表 values
(值1,值2 ...);
#語法三: 插入多條記錄
insert
into
表
values
(值1,值2 ...) ,(值1,值2 ...) ,(值1,值2 ...);
#語法四:插入查詢結果 insert
into
表(欄位1,欄位2 ...)
select
欄位1,欄位2 ...
from
表;
|
四種插入資料方式: 一.插入一條資料 insert into student(id,name,age,sex,salary) values(1,'小豬',18,'男',2500); 二.插入多條資料 insert into student(id,name,age,sex,salary) values(1,'小豬',18,'男',2500) ,(2,'小豬2',28,'男',2500),(3,'小豬3',38,'男',2500); 三.直接插入 insert into student values(1,'小豬',18,'男',2500); ps:如果插入的資料個數和位置正好與表的欄位個數和位置匹配,則可以省略表名後面的欄位定義 四.查詢並插入 insert into student(id,name,age) select id,name,age from tb ; ps:從tb表中查詢資料並插入到 student表中View Code
三 更新操作 UPDATE
1 2 3 4 5 |
#語法一: 更新整表資料
update
表
set
欄位1=
'值1'
, 欄位2=
'值2'
... ;
#語法二:更新符合條件欄位3的資料
update
表
set
欄位1=
'值1'
, 欄位2=
'值2'
...
where
欄位3 = 值3;
|
方式一: update student set name = '豬豬哥' ; ps: student表中所有的 name 欄位 的值 全部被更新為 '豬豬哥' 方式二: update student set name= '豬豬哥' ,age =13 where id = 2; ps: 更新 student 表中 name 和 age 欄位的值,並且只更新 id = 2的一條記錄View Code
四 刪除操作 DELETE
1 2 3 4 5 |
#語法一:整表資料刪除
delete
from
表 ;
#語法二:刪除符合
where
後條件的資料
delete
from
表
where
欄位1=值1;
|
方式一: delete from student; ps:刪除 student 表中所有的資料,注意:如果有自增主鍵,主鍵記錄的值不會被刪除. 方式二: delete from student where id=1; ps:只刪除id 為1的資料. 方式三: truncate student; ps:清空表View Code
truncate和delete的區別?[面試題]
1、TRUNCATE 在各種表上無論是大的還是小的都非常快。而DELETE 操作會被表中資料量的大小影響其執行效率.
2、TRUNCATE是一個DDL語言而DELETE是DML語句,向其他所有的DDL語言一樣,他將被隱式提交,不能對TRUNCATE使用ROLLBACK命令。
3、TRUNCATE不能觸發觸發器,DELETE會觸發觸發器。 4、當表被清空後表和表的索引和自增主鍵將重新設定成初始大小,而delete則不能。