美文网首页MySQL学习笔记
MySQL数据库基础知识和命令行操作(二)增删改查,建表约束

MySQL数据库基础知识和命令行操作(二)增删改查,建表约束

作者: Broken故城 | 来源:发表于2020-02-29 16:46 被阅读0次

个人笔记,仅供参考

1、数据类型如何选择

日期按照格式,数值和字符串按照大小

2、增删改查

:使用insert语句

INSERT INTO pet VALUES('Fluffy','Harold','cat','f','1993-02-04',null);

将括号的的值按顺序增加到名为pet的表的各个字段中

delete from pet where name='Fluffy';

删除pet表中name='Fluffy'那一行的数据

update pet set name='1' where owner='2';

将pet表中owner=‘2’那一行的name改为1

前面提到的select语句

select * from 表名

小结:

增加:INSERT

删除:DELETE

修改:UPDATE

查询:SELECT

(不区分大小写)

3、MySQL建表约束

即对每个字段值的限制

3.1、主键约束、自增约束

​ 主键约束能够唯一确定一张表中的一条记录,也就是通过给某个字段添加约束,就可以使字段不重复且不为空

create table user(
    id int primary key,
    name varchar(20)
);

第二行primary key就是创建主键的关键字

联合主键:多个字段主键,加起来不重复就可以

create table user2(
    id int,
    name varchar(20),
    password varchar(20),
    primary key(id,name)
    );

同时给id和name添加主键约束,此时增加数据id和name至少有一个不同才能添加成功,但还是不可以为空

自增约束

可以和主键约束放在一个字段上

create table user3(
    id int primary key auto_increment,
    name varchar(20)
    );

第二行id字段使用了自增约束,输入数据时可以省略这一条

insert into user3 (name) values('zhangsan');

这里只给name字段赋了值,id可以自动生成

如果创建表的时候忘记设置主键了

create table user4(
    id int,
    name varchar(20)
    );

创建后再执行以下命令来添加主键约束:

alter table user4 add primary key(id);
alter table user4 modify id int primary key;

两种方法都可以

删除主键

alter table user4 drop primary key;

3.2、外键约束

涉及到两个表:父表,子表

假设有班级表和学生表两个表:

create table classes(
    id int primary key,
    name varchar(20)
    );
create table students(
    id int primary key,
    name varchar(20),
    class_id int,
    foreign key(class_id) references classes(id)
    );

学生表的class_id字段与班级表的id字段相关联,学生表中的class_id由班级表中的id决定,即主表中没有的值,副表就不可以使用

主表中的记录被副表引用,是不可以在副表中删除的

3.3、唯一约束

约束该字段值不能重复,创建:

create table user5(
    id int,
    name varvhar(20)
    );

alter table user5 add unique(name);

第六行添加唯一约束

或者创建时直接添加:

create table user6(
    id int,
    name varvhar(20),
    unique(name)
    );

直接写在第三行后面也可以,使用modify添加参考前面主键约束

添加多个唯一约束时也是有一个不重复就可以

删除唯一约束

方法和前面删除主键差不多

alter table user7 drop index name;

小结

1、建表的时候可以添加约束

2、可以使用alter....add....

3、alter.....modify

4、删除alter....drop....

3.4、非空约束

修饰的字段不能为空

create table user9(
    id int,
    name varchar(20) not null
    );

3.5、默认约束

当我们插入字段值的时候,如果没有传值,就会只用默认值

create table user10(
    id int,
    name varchar(20),
    age int default 10
    );

age字段默认为10

相关文章

  • Python day24_mysql数据库

    mysql 数据库的操作 数据表的操作 增删改查(curd)

  • MySQL基础知识(系统归类)

    一、MySQL基础知识 数据库的操作无非就是增删改查,具体的包括库操作、表操作和数据的操作。很多人说SQL语句难学...

  • python基础-03

    python操作mysql数据库 创建数据表 数据表的 增 删 查 改 增 查 改 删

  • MySQL数据库基础知识和命令行操作(二)增删改查,建表约束

    个人笔记,仅供参考 1、数据类型如何选择 日期按照格式,数值和字符串按照大小 2、增删改查 增:使用insert语...

  • mysql复习

    MySQL复习: 创建表 表约束 对数据的增删改查 表关系的实现 查看有哪些数据库: SHOW DATABASES...

  • MySQL的基本使用

    目录 一、命令行连接 二、数据库操作 三、数据表操作 四、数据增删改查 五、数据备份&恢复 一、命令行连接 打开终...

  • SQL查询结构总结

    SQL 增删改查 对数据库有修改的操作是:增删改 增 insert into 表名 values(); 删 del...

  • 2018-01-11 JDBC连接数据库代码

    1.JDBC操作mysql数据库-增删改查 2.JDBC操作Oracle数据库-增删改查

  • JAEE学习笔记(17)mysql

    MySQL数据库 数据库(CURD -- 增删改查) 表(table)(CURD -- 增删改查) 数据(CURD...

  • mysql

    mysql 增删改查数据库的增删改查: create drop alter show表结...

网友评论

    本文标题:MySQL数据库基础知识和命令行操作(二)增删改查,建表约束

    本文链接:https://www.haomeiwen.com/subject/kvfmhhtx.html