mysql基礎 DML語言,增刪改

2021-10-21 20:50:47 字數 3161 閱讀 1943

dml語言即資料操作語言:

插入:insert

修改:undate

刪除:delete

一.插入語句

方式一:

語法:

insert into 表名(欄位名,...) values(值1,....)
#案例1.插入的值的型別與列的型別一致或相容

insert into beauty(id,name,***,borndate,phone,boyfriend) values(16,'小美',1,'1989-01-04 15:48:21','15890330987',2)

#案例2.列數和值的個數必須對應且一致

insert into beauty(name,***,borndate,phone) values('小美2',1,'1989-01-04 15:48:21','15890330987')

#案例3.可以省略列名,預設所有列,而且列的順序和表中的列順序一致

insert into beauty values(17,'糰子',1,'1989-01-04 15:48:21','16912354698',3)

insert into 表名

set 列名=值,列名=值,...

兩種方式比較:

1.方式一支援多行插入

2.方式一支援子查詢,方式二不支援

#案例1.方式一支援多行插入

insert into beauty values (18,'小美1',1,'1989-01-04 15:48:21','16912365876',null),

(19,'小美1',1,'1989-01-04 15:48:21',null,null),

(20,'小美3',1,'1989-01-04 15:48:21',null,null);

#案例2.方式一支援子查詢,方式二不支援

insert into beauty(id,name,***,borndate) select 21,'琪琪',1,'1989-01-04 15:48:21';

二.修改語句

1.修改單錶的記錄

語法:

update 表名

set 列=新值,列=新值,...

where 篩選條件;

#案例:修改beauty表中含有小的名字的**為15988889999

update beauty set phone = '15988889999'

where name like '%小%';

2.修改多表的記錄(比較少用)

語法:(sql99語法)

update 表1 別名

inner|left|right join 表2 別名

on 連線條件

set 列=值,...

where 篩選條件

#案例1:修改boys表路飛的女朋友的手機號為114

update beauty a inner join boys b on a.boyfriend = b.id

set a.phone='114',b.user_cp= 110

where b.boy_name='路飛';

#案例2:修改沒有男朋友的女生的男朋友編號為1號

#內連線

update beauty a inner join boys b on a.boyfriend = b.id

set a.boyfriend = 1

where a.boyfriend is null;

#右連線

update boys a right join beauty b on a.id = b.boyfriend

set b.boyfriend = 1

where b.boyfriend is null;

#左連線

update beauty a left join boys b on a.boyfriend = b.id

set a.boyfriend = 1

where a.boyfriend is null;

三.刪除語句

方式一:delete

語法:1.單錶的刪除

delete from 表名 where 篩選條件

2.多表的刪除(比較少用):

sql99語法:

delete 表1的別名,表2的別名

from 表1 別名

inner|left|right join 表1 別名 on 連線條件

where 篩選條件

#(1).單錶的刪除

#案例1.刪除beauty表中name含有"楊"字的資料刪除;

delete from beauty where name like '%楊%';

#(2).多表的刪除

#案例1.刪除周杰倫的女朋友的資訊

delete a

from beauty a

inner join boys b on a.boyfriend=b.id

where b.boy_name='周杰倫'

#案例2.刪除桃之助和他女朋友的資訊

delete a,b

from beauty a

inner join boys b on a.boyfriend=b.id

where b.boy_name='桃之助';

方式二.truncate 刪除的是整個表的資料,不支援加篩選條件

語法:

truncate table 表名; (清空資料)
delect 和truncate的區別:

1.delect 可以加where條件,truncate不能加

2.truncate刪除,效率高一些;

3.假入要刪除的表中有自增長列,用delect刪除後,再插入資料,自增長的列的值從斷點開始;

而用truncate刪除後,再插入資料,自增長的列的值從1開始.

4.truncate刪除沒有返回值,delete刪除有返回值;

5.truncate 刪除不能回滾,delect刪除可以回滾.

DML 語言 增刪改

總體而言資料操作語言分為三種 插入insert,更新update,刪除delete 一,插入語句 語法 方式一 insert into 表名 列名,values 值1,支援插入多行 支援子查詢 方式二 insert into 表名 set 列名 值,列名 值,特點 插入值型別要與列型別保持一致 不可...

mysql之dml語言 增刪改

語法 insert into 表名 欄位名1,欄位名2,欄位名3.value 值1 值2 值3 示例insert into grade gradename values 大四 insert into grade gradename values 大二 大一 insert into student n...

DML(增刪改查)

在實際專案中,使用最多的是讀取操作,但是插入資料和刪除資料同等重要,而修改操作相對較少 插入操作 元組值的插入 查詢結果的插入 最基本的插入方式 insert into tablename values val1,val2,如果表名之後沒有列,那麼只能將所有的列都插入 insert into tab...