MySQL 基础3

MySQL-学习笔记3

一、DML语言 (数据操作语言)

  • 插入:insert
  • 修改:update
  • 删除:delete

1、插入语句
方式一

语法

insert into 表名(列名1,列名2…)value(值1,值2,…)

 insert into boys(id, boyName,userCP) value (5,'鹿晗',200)

特点

  • 插入的值类型要与列的类型一致
  • 不可以为空值的列必须插入值,可以为空值的列有两种插入空值的方式
  • 可以省略列名,默认所有列,且列的顺序与表中列的顺序一致

方式二

语法
insert into 表名
set 名1 = 值1,列名2 = 值2

两种方式PK

  • 方式一支持插入多行
insert into boys(id, boyName,userCP) 
value(7,'张艺兴',200),(8,'邓超',200),(9,'陈赫',200);
  • 方式一支持子查询,方式二不支持子查询
insert into boys(id, boyName,userCP) 
select 10,'蔡徐坤',300;

2、修改语句

修改单表的记录

语法
update 表名
set 列 = 新值, 列 = 新值
where 筛选条件

eg.把柳岩的电话改成18888888888

update beauty 
set phone = '18888888888'
where name = '柳岩';

修改多表的记录

语法
update 表名1 别名,
inner join 表名2 别名
set 列 = 新值, 列 = 新值
on 连接条件
set 列 = 值
where 筛选条件

eg. 把张无忌的女朋友的电话号码改成114

update beauty g
inner join boys b
on g.boyfriend_id = b.id
set phone = 114
where b.boyName = '张无忌';

3、删除语句

语法
delete from 表名 where 筛选条件

单表删除
eg. 删除手机号以9为结尾的女神信息

delete from beauty 
where phone like '%9';

多表删除
eg. 删除张无忌的女朋友的信息

delete g
from beauty g
inner join boys b
on g.boyfriend_id = b.id
and b.boyName = '张无忌';
二、DQL(数据定义语言)
  • 库的管理:创建、修改、删除
  • 表的管理:创建、修改、删除

1、库的管理

库的创建
语法
create database 库名;

库的修改
语法
rename database 库名 to 新库名;

2、表的管理

表的创建

语法

create table 表名(
				列名 列的类型【(长度)约束】,
				列名 列的类型【(长度)约束】,
				列名 列的类型【(长度)约束】,
				...
				列名 列的类型【(长度)约束】
);

例子

create table `books`.`book`(  
						  `id`  int(10),
						  `name`  varchar(20),
						  `price`  decimal(10),
						  `author`  varchar(20)
);

表的修改

  • 修改列名
alter table 表名 change column 列名 新列名;
  • 修改列的字段类型
alter table 表名 modify column 列名 字段新类型;
  • 添加新列
alter table 表名 add column 列名 字段类型;
  • 删除列
alter table 表名 drop column 列名;

表的删除
drop table 表名;

约束

1、常见的约束类型

  • not null 非空约束,用于保证该字段的值不为空
  • default 默认约束,用于保证该字段的值有默认值
  • primary key 主键,用于保证该字段的值具有唯一性并且非空
  • unique 唯一值,用于保证该字段的值具有唯一性,可以为空
  • check 检查约束
  • foreign key 外键,用于限制两表的关系,保证该字段的值必须来自主表关联列的值

2、添加约束的时机

  • 创建表时
  • 修改表时

创建表时添加约束

create table 表名(
				列名 列的类型 【约束】,
				列名 列的类型 【约束】,
				列名 列的类型 【约束】,
				...
				列名 列的类型 【约束】
);

例子


create table stuinfo(
	id int primary key,
	stuName  varchar(10) not null,
	gender  char(1) check(gender = '男' or gender = '女'),
	age  int(5)  default 18,
	majoerId int(5));

添加约束的分类

  • 表级的约束:除了非空和默认,其它约束都支持
  • 列级的约束:六大约束都支持,但外键约束没有效果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值