MySQL数据库的增删改以及约束

对MySQL数据库的增删改以及约束

严格的语法中,数据库名和字段名需要使用反单引号括起来
例如: `depeName`
(这里有点懒,就没有添加)

对结构的增删改(create、drop、alter)

对数据库结构进行增删改

1. 创建数据库(增)
create database 数据库名;
2. 显示当前所有的数据库
show databases;
3. 删除数据库(删)
drop database 数据库名;
drop database if exists 数据库名; —>先判断数据库是否存在,若存在则删除

对表结构进行增删改

1. 创建表(增)
create table 表名(
<字段名1> <数据类型> [列级别约束条件] [默认值],
<字段名2> <数据类型> [列级别约束条件] [默认值],
<字段名3> <数据类型> [列级别约束条件] [默认值],

)

–注意:<>:必须要有 [ ]:可有可无
–最后一个字符后面不要逗号
–[ ] 部分如果没有设置,则mysql会使用默认的设置

2. 删除表(删)
drop table 表名;
3. 向表中添加列(增)
alter table 表名 add 字段名 数据类型;
4. 修改表名(改)
alter table 表名 rename to 新表名;
rename table 旧表名 to 新表名;
5. 修改列名称(改)
alter table 表名 change 旧名称 新名称 数据类型;(可以添加约束)
6. 删除列(删)
alter table 表名 drop 列名;
7.显示表结构
show columns from 表名;
8.清空表中内容,但表还存在
delete from 表名;

对数据进行增删改(insert、delete、update)

1. 添加数据
向所有列添加值
insert into 表名 values(对应类型的数据,…,…);
向指定列插入值
insert into emp(ename,sal) values(…,…);
2. 修改数据
update 表名 set 列名1=新值1,列名2=新值2…where 条件;
3. 删除数据
delete from 表名称 where 条件;

约束

创建表时,要确保数据的完整性,约束是保证数据完整性的重要技术手段
通过约束,对数据库操作行为进行限定

注意:
[列级别约束] 位于列声明的末尾,[表级别约束]位于表声明的末尾

1、非空约束

非空约束时一个列级别的约束,它要求所限定的列(字段)不允许插入空值。
create table 表名(
字段名 数据类型 not null,

);

2、唯一性约束

唯一性约束:是一个列级别约束,设定的列不允许插入重复的值
create table 表名(
字段名 数据类型 unique,

);

3、默认值(default)约束

默认值约束:是一个列级别约束
所限定的列,当没有插入值的时候,会插入这个默认值
create table 表名(
字段名 数据类型 default 值,

);

4、主键约束

主键约束:是一个表级别的约束,它等价于 非空 + 唯一约束。
它要求所限定的列,非空且唯一

  1. 添加主键约束
    create table 表名(
    字段名 数据类型 primary key,

    );
  2. 删除主键约束
    alter table 表名 drop primary key;

5、外键约束

外键用来建立主表与从表的关联关系,为两个表的数据建立连接,约束两个表中数据的一致性和完整性。

1. 添加外键
创表时添加:
create table 从表名(
字段名 数据类型 primary key auto_increment,
字段名 数据类型 not null,
字段名 数据类型,
constraint fk_emp_dept(外键名称) foreign key(deptId) references 主表(deptId)
);
单独添加
alter table 从表名 add constraint fk_e_d(自定义外键名) foreign key(deptId) references dept(deptId);
2.删除外键
alter table 从表名 drop foreign key fk_emp_dept(自定义的外键名);

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值