一口气看完MySQL–上篇

云惠网小编 2021年10月12日23:18:50
评论
3834字阅读12分46秒
摘要

MySqlMySql中的数据类型注释数据库操作表的操作给表关联约束主键约束 primary key创建删除主键约束联合主键创建删除联合主键唯一约束 unique创建删除唯一约束自动增长列 auto_increment创建删除自动增长默认约束 default创建删除默认约束非空约束 not null创建删除非空约束外键约束 foreign key创建删除外键约束MySql中的数据类型1.数值类型大小范围范围用途TINYINT1字节-27~27 -10~2^8 -1小整数

广告也精彩

修改表的同时关联约束

数据库操作


//方式一
alter table 表名 add constraint 主键约束的名字 primary key(列名1,列名2);
//方式二
alter table 表名 add primary key(列名1,列名2);

非空约束 not null

注释


唯一约束 unique

alter table sudent modify 姓名 varchar(5);
alter table student modify 性别 varchar(3) default '男';

创建

针对两个表,加强表与表之间联系
一张表中可以有多个外键约束
主表想要删除被从表引用的数据,会删除失败

在一个表中,找到一个列,该列做到唯一区分效果

​ 设定多少长度,就会全部占满    以实际长度占用空间

外键约束 foreign key

创建表的同时关联约束

alter table 从表 add constraint 外键约束名 foreign key(从表列名) references (主表列名);

MySql中的数据类型

类型 大小(字节) 用途
CHAR 0-255 定长字符串
VARCHAR 0-65535 变长字符串
TINYBLOB 0-255 不超过255字符二进制字符串
TINYTEXT 0-255 短文本字符串
BLOB 0-65535 二进制长文本数据
TEXT 0-65535 长文本数据
MEDIUMBLOB 0-16777215 二进制形式中等长度文本数据
MEDIUMTEXT 0-16777215 中等长度文本数据
LONGBLOB 0-4294967295 二进制形式极大文本数据
LONBTEXT 0-4294967295 极大文本数据

创建表的同时关联约束

类型 大小 范围 格式 用途
DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
TIME 3 ‘-838:59:59’/‘838:59:59’ HH–MM-SS 时间值或持续时间
YEAR 1 1901/2155 YYYY 年份
DataTime 8 1000-01-01 00:00:00
9999-12-31 23:59:59
YYYY-MM-DD
HH:MM:SS
混合日期和时间值
TIMESTAMP 8 1970-01-01 00:00:00/2037某时 YYYYMMDDHHMMSS 混合日期和时间值,时间戳

2.日期/时间

1.查看现有的数据库
show databases;
2.创建数据库
create databases 数据库名字;
3.删除数据库
drop database 数据库名字;

MySql

  • MySql中的数据类型
  • 注释
  • 数据库操作
  • 表的操作
    • 给表关联约束
      • 主键约束 primary key
        • 创建
        • 删除主键约束
      • 联合主键
        • 创建
        • 删除联合主键
      • 唯一约束 unique
        • 创建
        • 删除唯一约束
      • 自动增长列 auto_increment
        • 创建
        • 删除自动增长
      • 默认约束 default
        • 创建
        • 删除默认约束
      • 非空约束 not null
        • 创建
        • 删除非空约束
      • 外键约束 foreign key
        • 创建
        • 删除外键约束
alter table student modify 列名 数据类型;

联合主键

同删除主键

1.数值

删除非空约束

区别

修改表的同时关联约束

联合主键 : 将两个列看成一个整体列

修改表的同时添加联合主键

创建表的同时关联约束

alter table student modify	性别 varchar(3);

创建

默认约束 default

实体完整性约束

创建


表的操作

alter table 从表 drop foreign key 外键约束名;

外键约束建立在从表中,拿上从表中的某个列参照引用主表的某个列
要求主表必须要有主键约束或者唯一约束
参照引用的列可以不一致,但数据类型和内容必须保持一致

删除默认约束

alter table student add unique(学号);

保证是唯一的,不能重复,但是可以为空
一个表中可以有多个唯一约束
设置一个唯一约束会默认给一个索引
若没有给唯一约束起名,默认和列名一致


创建

给表关联约束

3.字符串(字符)类型

alter table student modify 姓名 varchar(5) not null;
类型 大小 范围 范围 用途
TINYINT 1字节 -27~ 27 -1 0~28 -1 小整数
SMALLINT 2字节 -215~ 215 -1 0~216 -1 大整数
MEDIUMINT 3字节 -223~ 223 -1 0~224 -1 大整数
INT 4字节 -231 ~ 231 -1 0~ 232 -1 大整数
BIGINT 8字节 -263~ 263 -1 0~264 -1 极大整数
FLOAT 4字节 单精度浮点数
DOUBLE 8字节 双精度浮点数
DECIMAL 小数值

创建表的同时关联约束


自动增长列 auto_increment

alter table student modify 列名 数据类型 auto_increment;
0.选择数据库操作
use 数据库名;
1.创建表
create table 表名(
属性名1 数据类型 [约束条件],
//		姓名 varchar(10) not null,
属性名2 数据类型 [约束条件],
属性名3 数据类型 [约束条件]
);
2.删除表
drop table 表名;
3.修改表
3.1添加列
alter table 表名 add 属性名 数据类型;
//		alter table 学生表 add 专业 carchar(10);
3.2删除列
alter table 表名 drop 属性名;
//		alter table 学生表 drop 成绩;
3.3修改列的数据类型
alter table 表名 modify 属性名 新数据类型;
//		alter table 学生表 modify 成绩 float(4,1);
3.4修改列名
alter table 表名 change 旧字段名 新字段名 数据类型;
//		alter table 学生表 change 姓名 学生名 数据类型;
4.显示表结构
desc 表名;
//方式一
alter table student add constraint 主键约束的名字 primary key(列名);
//方式二
alter table 表名 add primary key(列名);
//方式三
alter table 表名 modify 列名 数据类型 primary key;

修改表的同时关联约束

char(字符串长度) 定长        varchar(字符串长度) 变长

删除主键约束

删除唯一约束

主键约束 primary key

创建表的同时关联约束

-- 单行注释内容
/*多行注释内容*/
//方式一
create table student(
学号 int unique,
姓名 varchar(5),
年龄 int,
课程号 varchar(10) unique
);
//方式二
create table student(
学号 int,
姓名 varchar(5),
年龄 int,
课程号 varchar(10),
constraint UN_学号 unique(学号),
constraint UN_课程号 unique(课程号)
);

alter table 表名 drop primary key;

创建

create table student(
学号 int auto_increment,
姓名 varchar(5),
年龄 int,
课程号 varchar(10)
);

删除联合主键

​ 例如decimal(7,2),整数占五位,小数占两位

//方式一
create table student(
id int primary key,
name varchar(5),
age int
);
//方式二
create table student(
id int,
name varchar(5),
age int,
constraint 主键约束的名字(PK_列名)  primary key(id)
);
//方式三
create table student(
id int,
name varchar(5),
age int,
primary key(id)
);

创建


创建表的同时添加联合主键

alter table 表名 drop primary key;
alter table student drop index 学号(唯一约束的名字);

修改表的同时关联约束

域完整性约束

创建


create table student(
学号 int,
姓名 varchar(5),
-- 字符或者日期时间类型	需要加单引号
性别 varchar(3) default '男',
入学日期 datetime default '2020-01-01'
);

修改表的同时关联约束

create table 主表(
列名1 数据类型 primary key,
列名2 数据类型
);
create table 从表(
列名1 数据类型,
列名2 数据类型,
列名3 数据类型,
constraint 外键约束的名字(FK_列名) foreign key(从表列名1) references (主表列名1)
);

删除自动增长

create table student(
学号 int,
姓名 varchar(5) not null,
年龄 int,
课程号 varchar(10)
);

删除外键约束

修改表的同时关联约束

创建表的同时关联约束

DECIMAL(总位数,小数位) FLOAT(总位数,小数位) DOUBLE(总位数,小数位)

//方式一
create table student(
id int,
name varchar(5),
age int,
constraint 主键约束的名字(PK_列名)  primary key(id,name)
);
//方式二
create table student(
学号 int,
姓名 varchar(5),
年龄 int,
课程号 varchar(10),
primary key(学号,课程号)
);

在工具中,“打开表”–>看表内容
     “设计表”–>看表结构

本文转自 https://blog.csdn.net/maqiu233/article/details/120689266

腾讯云618
云惠网小编
自己开发的音乐视频网站 java

自己开发的音乐视频网站

1.需求开发基于B/S模式的web音乐网站,要包含音乐和mv。为用户提供一个友好的视频和音乐播放环境,包含了大量最新一代的视频和音乐,同时它还具有评论收藏功能,方便以后注册的用户观...
腾讯云618

发表评论