二、修改語句
三、刪除語句
語法:
insert into 表名(列名,…) values(值1,…);
語法:select * from beauty;
#1.插入的值的型別要與列的型別一致或相容
insert into beauty
(id,name,***,borndate,phone,photo,boyfriend_id)
values(13
,'唐藝昕'
,'女'
,'1990-4-23'
,'1898888888'
,null,2)
;#2.不可以為null的列必須插入值。可以為null的列如何插入值?
#方式一:
insert into beauty
(id,name,***,borndate,phone,photo,boyfriend_id)
values(13
,'唐藝昕'
,'女'
,'1990-4-23'
,'1898888888'
,null,2)
;#方式二:
insert into beauty
(id,name,***,phone)
values(15
,'娜扎'
,'女'
,'1388888888');
#3.列的順序是否可以調換
insert into beauty
(name,***,id,phone)
values
('蔣欣'
,'女',16
,'110');
#4.列數和值的個數必須一致
insert into beauty
(name,***,id,phone)
values
('關曉彤'
,'女',17
,'110');
#5.可以省略列名,預設所有列,而且列的順序和表中列的順序一致
insert into beauty
values(18
,'張飛'
,'男'
,null,
'119'
,null,null)
;
insert into 表名
set 列名=值,列名=值,…
語法:insert into beauty
set id=
19,name=
'劉濤'
,phone=
'999'
;#兩種方式大pk ★
#1、方式一支援插入多行,方式二不支援
insert into beauty
values(23
,'唐藝昕1'
,'女'
,'1990-4-23'
,'1898888888'
,null,2)
,(24,
'唐藝昕2'
,'女'
,'1990-4-23'
,'1898888888'
,null,2)
,(25,
'唐藝昕3'
,'女'
,'1990-4-23'
,'1898888888'
,null,2)
;#2、方式一支援子查詢,方式二不支援
insert into beauty
(id,name,phone)
select 26
,'宋茜'
,'11809866'
;insert into beauty
(id,name,phone)
select id,boyname,
'1234567'
from boys where id<
3;
update 表名
set 列=新值,列=新值,…
where 篩選條件;
語法:
sql92語法:
update 表1 別名,表2 別名
set 列=值,…
where 連線條件
and 篩選條件;
sql99語法:#1.修改單錶的記錄
#案例1:修改beauty表中姓唐的女神的**為13899888899
update beauty set phone =
'13899888899'
where name like '唐%'
;#案例2:修改boys表中id好為2的名稱為張飛,魅力值 10
update boys set boyname=
'張飛'
,usercp=
10where id=
2;
update 表1 別名
inner|left|right join 表2 別名
on 連線條件
set 列=值,…
where 篩選條件;
語法:#2.修改多表的記錄
#案例 1:修改張無忌的女朋友的手機號為114
update boys bo
inner join beauty b on bo.`id`=b.`boyfriend_id`
set b.`phone`=
'119'
,bo.`usercp`=
1000
where bo.`boyname`=
'張無忌'
;#案例2:修改沒有男朋友的女神的男朋友編號都為2號
update boys bo
right join beauty b on bo.`id`=b.`boyfriend_id`
set b.`boyfriend_id`=
2where bo.`id` is null;
select * from boys;
1、單錶的刪除【★】
delete from 表名 where 篩選條件
2、多表的刪除【補充】#案例:刪除手機號以9結尾的女神資訊
delete from beauty where phone like '%9'
;select * from beauty;
sql92語法:
delete 表1的別名,表2的別名
from 表1 別名,表2 別名
where 連線條件
and 篩選條件;
sql99語法:
delete 表1的別名,表2的別名
from 表1 別名
inner|left|right join 表2 別名 on 連線條件
where 篩選條件;
#案例:刪除張無忌的女朋友的資訊
delete b
from beauty b
inner join boys bo on b.`boyfriend_id` = bo.`id`
where bo.`boyname`=
'張無忌'
;#案例:刪除黃曉明的資訊以及他女朋友的資訊
delete b,bo
from beauty b
inner join boys bo on b.`boyfriend_id`=bo.`id`
where bo.`boyname`=
'黃曉明'
;
delete 與 truncate 對比:truncate
table boys ;
1.delete 可以加where 條件,truncate不能加
2.truncate刪除,效率高一丟丟
3.假如要刪除的表中有自增長列,如果用delete刪除後,再插入資料,自增長列的值從斷點開始,而truncate刪除後,再插入資料,自增長列的值從1開始。
4.truncate刪除沒有返回值,delete刪除有返回值
5.truncate刪除不能回滾,delete刪除可以回滾.
DML(增刪改查)
在實際專案中,使用最多的是讀取操作,但是插入資料和刪除資料同等重要,而修改操作相對較少 插入操作 元組值的插入 查詢結果的插入 最基本的插入方式 insert into tablename values val1,val2,如果表名之後沒有列,那麼只能將所有的列都插入 insert into tab...
DML之SQL增刪改查
dml 資料操作語言 適用物件 表中的資料 功能 1 向表中新增資料 mysql insert into goods id,name,price,type values 2,褲子 100,服裝 注意 如果我們新增資料時,每一列的值都不為空的話,我們可以省去列,如下 mysql insert into...
DML 資料操作(增刪改)
dml data manipulation language 資料操作語言,用來定義資料庫記錄 資料 dml是對錶中的資料進行增 刪 改的操作。插入操作 insert insert into 表名 values 值列表 值列表 insert into t1 values 01,二狗 選擇插入 ins...