美文网首页
MySQL 关系型数据库

MySQL 关系型数据库

作者: my木子 | 来源:发表于2020-03-12 19:16 被阅读0次

一、基本语法

//  登录 mysql 
$ mysql -u root -p root

//  退出 mysql
exit;

// 创建 family 数据库
 create database family;

// 创建  info 数据表,primary key为主键
create table info(
id int primary key,
name char(20),
birth date,
age tinyint(200),
gender char(2)
);

// 查询所有数据库
show databases;

//  选择 family 数据库
 use family;

//  查看  family 数据库中的数据表
show tables;

//  查询  info 表中的数据
 select * from info;

//  查看 info 数据表的结构
describe info;

//   info 数据表中插入数据
insert into info values(1,'张三','1991-05-03','29','男');

// 修改 info 数据表中的数据
update info set name='张三' where id=1;

// 删除 info 数据表中的数据
delete from info where name='张三';

/**
注意事项:
1:var()与varchar()的区别在于var()是定常的,哪怕存储的字符串没有达到"()"中数字的上限,var()依然会占用空格来填充空间.而varchar()则是不定长的,没有达到"()"中的上限则会自动去掉后面的空格;
2:性别不要用:sex 要用:gender  一个是性 一个是性别;
3:定义最后一个字段的时候不要加",";
4:上面的"VAR","VARCHAR","DATE"可以用小写.不过最好用大写来表示区分关键字,若不然也许写到后面你自己都不知道这个词是数据库中的关键字还是你自己自定义的一些数据,同时一定要用英文的标点符号也必须半角输入
**/

二、mysql建表中的约束

1. 主键约束:它能够唯一确定一张表中的一条记录,增加主键约束之后,就可以使得字段不重复而且不为空

create table info(
    id int primary key,
    name char(20),
);

// 添加 info 数据表主键
alter table info add primary key(id);
// 修改 info 数据表主键
alter table info modify id int primary key;
// 删除 info 数据表主键
alter table info drop primary key;
2. 联合主键:主键值加起来不重复
create table info(
    id int,
    name char(20),
    gender char(2),
    primary key(id,name)
);
3.自增约束:无需传主键值,id 自动增加
create table info(
    id int primary key auto_increment,
    name char(20)
);
4.唯一约束:约束修饰的字段的值不可重复
create table info(
    id int,
    name char(20),
    unique(name)
);

create table info(
    id int,
    name char(20) unique
);

create table info(
    id int,
    name char(20),
    unique(id,name)
);
// 删除  info 表中的唯一约束
alter table info drop index name
// 添加  info 表中的唯一约束
alter table info modify unique name varchar(20) 
5.非空约束:修饰的字段不能为空 null
create table info(
    id int,
    name char(20) no null
);
6.默认约束:没传值的时候默认赋值
create table info(
    id int,
    name char(20) default '张三'
);
7.外键约束:涉及两个表 父表子表
  • 主表中没有的数据值,在副表中是不可以使用的
  • 主表中的记录被副表引用,是不可以被删除的
// 班级
create table classes(
    id int primary key,
    name char(20)
);

// 学生表 
// class_id 必须来自classes 表中的 id
create table students(
    id int primary key,
    name char(20),
    class_id int,
    foreign key(class_id) references classes(id)
);

相关文章

  • (十一)学习笔记:MySQL数据库的使用总结

    MySQL数据库 数据库有关系型和非关系型之分,MySQL属于关系型数据库。关系型数据库的优势:1.复杂的查询, ...

  • MySQL

    mysql 分为关系型数据库和非关系型数据库 关系型:MySQL,DB2,sqlte...等 非关系型数据库:mo...

  • MySQL数据库一:二进制部署

    普及: 关系型数据库: 非关系型数据库(NOSQL): 图形数据库: 时序数据库: 一、MySQL(mysql) ...

  • MongoDB小总结

    关系型数据库:mysql非关系型数据库:mongodb、redismongodb:(nosql:not only ...

  • 数据库——MySQL

    MySQL 数据库有两种:关系型:MySQL非关系型 MySQL的优势: MySQL是一款免费,开源的数据库,任何...

  • MySQL——语法

    数据库排名:Oracle(关系型)MySQL(关系型)SQLServer(关系型)PostgreSQL(关系型)M...

  • 叼!阿里Mysql三位封神专家总结800页性能优化的千金良方

    MYSQL(关系型数据库管理系统) MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 ...

  • mysql简介及安装

    [TOC] 数据库介绍 关系型数据库: MySQL Oracle MSSQL PostgreSQL非关系型数据库...

  • database

    深入mysql: mysql与nosql: 关系型数据库和nosql数据库场景说明:关系型数据库把所有的数据都通过...

  • MySQL基础理论

    MySQL基础理论 mySQL (关系型数据库管理系统) 编辑 MySQL是一个关系型数据库管理系统,由瑞典MyS...

网友评论

      本文标题:MySQL 关系型数据库

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