MySQL基础之数据操纵语言-插入修改删除

Posted nuist__NJUPT

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL基础之数据操纵语言-插入修改删除相关的知识,希望对你有一定的参考价值。

mysql基础之数据操纵语言-插入、修改、删除

插入语句语法一:
insert into 表名(列名,…) values(值1,…) ;

1-插入的值的类型要与列的类型一致或兼容,如果插入全部列,可以将列名省略

insert into beauty
values(13, '唐艺昕', '女', '1992-03-23', '123342343', null, 2);

2-不可以为null的值必须插入,可以为null的值可以插入null,也可以不插入

3-指定必须插入的列后,列的顺序可以颠倒

4-列数和值的个数必须一致

5-可以省略列名,默认所有列,且列的顺序与表中列的顺序一致
6.支持多行插入

insert into beauty
   values(17, '唐艺昕1', '女', '1992-03-23', '123342343', null, 2),
   (18, '唐艺昕2', '女', '1992-03-23', '123342343', null, 2),
   (19, '唐艺昕3', '女', '1992-03-23', '123342343', null, 2);

7.支持子查询,即将查询的结果插入

insert into beauty(id,name,phone)
    select 20,'宋茜','12324234';

插入语句语法二:
insert into 表名
set 列名=值,列名=值…

 insert into beauty 
   set id = 14, name = '刘涛', phone = '1342324234';

修改单表的记录
语法:
update 表名
set 列 = value…
where 筛选条件;

修改beauty表中姓唐的女神的电话为13888888888:

#修改beauty表中姓唐的女神的电话为13888888888
    update beauty 
    set phone = '13888888888'
    where name like '%唐%';

修改boys表中id等于2的男生名称为王道,魅力值为1000:

 #修改boys表中id等于2的男生名称为王道,魅力值为1000
    update boys 
    set boyname = '王道', usercp = 1000
    where id = 2 ;

修改多表的记录
语法:
update 表1 别名
inner|left|right join 表2 别名
on 连接条件
set 列=值,…
where 筛选条件

修改张无忌的女朋友手机号为114:

#修改张无忌的女朋友手机号为114
    update boys bo
    inner join beauty b on bo.id = b.boyfriend_id
    set phone = '114'
    where bo.boyName = '张无忌';

删除语句方式一:

单表删除
语法:
delete from 表名
where 筛选条件

删除手机号以9结尾的女神信息:

 #删除手机号以9结尾的女神信息
    delete from beauty
    where phone like '%9' ;

多表删除
语法:
delete 表别名
from 表1 别名
inner|left|right join 表2 on 连接条件
where 筛选条件

#删除张无忌的女朋友信息
    delete b
    from beauty b
    inner join boys bo on bo.id = b.boyfriend_id
    where bo.boyName = '张无忌';

删除语句方式二:
语法:
truncate table 表名 ;
改语法的删除就是清空表中数据,不可以加入筛选条件。

delete与truncate对比:

1-delete可以加where,truncate不可以加where。
2-truncate更高效一点。
3-假如使用delete删除,再插入数据,自增长列的值从断点开始;而使用truncate删除后,再插入数据,自增长列的值从1开始。
4-truncate删除无返回值,delete删除有返回值。
5-truncate删除不能回滚,delete删除可以回滚。

以上是关于MySQL基础之数据操纵语言-插入修改删除的主要内容,如果未能解决你的问题,请参考以下文章

day06-python数据库-mysql之基础

Mysql 基础之 DMLDDLDCL定义

MySQL学习第二天之DML和DDL

MySQL操作基础之DML语句

MySQL_基础_DML数据操纵语言

DML数据操纵语言