0
点赞
收藏
分享

微信扫一扫

mysql笔记——基础知识

ixiaoyang8 2022-01-09 阅读 90

目录

基本操作知识

数据表的基本操作

基本数据类型知识

表的约束


  • 基本操作知识

  1. 创建数据库
    create database 数据库名称;
  2. 查看数据库
    show databases; ---查看已存在的数据库
    show create database 数据库名称;  ---查看已创建的数据库信息
    
  3. 修改数据库
    alter database 数据库名称 default character set 编码方式 collate 编码方式_bin;
                   指要修改的数据库                 指修改后的数据库编码
  4. 删除数据库
    drop database 数据库名称;
  • 数据表的基本操作

  1. 创建数据表
    create table tablename(
    字段名1 数据类型 [约束条件],
    字段名2 数据类型 [约束条件],
    ......);
  2. 查看数据表
    方法一
    show create table 表名;  ---查看表的信息(包括表定义的语句以及字符编码)
    show create table 表名\G;  ---查看表的信息(同上,较美观) 
    方法二
    describe 表名;  ---查看表的字段信息(包括字段名信息类型等)
    desc 表名;  ---同上,简写

            表中不同的字段及解释

字段名解释
NULL表示该列是都可以存储NULL值
Key表示该列是否以及编制索引
Default表示该列是否有默认值
Eetra表示获取到的与给定列相关的附加信息

     3.修改数据表

操作格式
修改表名
alter table 旧表名 rename 新表名;
修改字段名
alter table 表名 change 旧字段名 新字段名 新数据类型;

修改字段的数据类型

alter table 表名 modify 字段名 数据类型;

字段名为要修改的字段,数据类型为新的数据类型

添加字段
alter table 表名 add 新字段名 数据类型 [约束条件] [first|after 已存在的字段名];
删除字段
alter table 表名 drop 删除字段;
修改字段的排列位置
alter table 表名 modify 字段名1 数据类型 first|after 字段名2;

     4.删除数据表

drop table 表名;
  • 基本数据类型知识

  1. 数值类型
数据类型字节数取值范围(无符号)取值范围(有符号)
TINYINT10~255-128~127

SMALLINT

20~65 535-32 768~32 767
MEDIUMINT30~16 777 215-8 388 608 ~8 388 607
INT40~4 294 867 295

-2 147 483 648~2 147 483 647 

BIGINT80~18 446 744 073 551 615

-9 223 372 036 854 775 808

~9 223 372 036 854 775 807

FLOAT4

-3.402 823 466E+38~

-1.175 494 354E—38

0和1.175 494 354E—38~3.402 823 466E+38
DOUBLE8

-1.797 693 134 862 315 7E+308~2.225 073 858 507 201 4E—308)

         

0和(2.225 073 858 507 201 4 E-308

~1.797 693 134 862 315 7E+308

                  
DECIMAL(M,D)M+2-1.797 693 134 862 315 7E+308~2.225 073 858 507 201 4E—308)

0和(2.225 073 858 507 201 4 E-308

~1.797 693 134 862 315 7

​​​​​​

需要注意的是DECIMAL类型的取值范围有M和D决定,M表示数据的长度,D表示小数点后的长度​

2.日期与时间类型

数据类型字节数取值范围日期格式零值
YEAR1901~2155YYYY0000
DATE41000-01-01~9999-12-3YYYY-MM-DD0000-00-00
TIME3-838:59:59~838:59:59HH: MM:SS00:00:00
DATETIME8

1000-01-01 00:00:00~

9999-12-31 23:59:59

YYYY-MM-DD

HH:MM:SS

0000-00-00 00:00:00
TIMSTAMP4

1970-01-01 00:00:01~2038-01-19 03:14:07

YYYY-MM-DD

HH: MM:SS

0000-00-00 00:00:00

YEAR类型

格式一:用四位字符串或数字表示,范围“1901”~“2155”,1901~2155

格式二:用两位字符串表示,范围"00"~"99"

格式三:使用两位数字表示范围为1~99

需要注意的是,当使用 YEAR类型时,一定要区分‘0’和0,因为字符串格式的0表示值为2000,二0表示的值为0000。

DATE类型

格式一:用' YYYY-MM-DD'或者’YYYYMMDD‘字符串表示

格式二:用'YY-MM-DD'或者’YYMMDD‘字符串格式表示

格式三:用'YY-MM-DD'或者’YYMMDD‘数字格式表示

格式四:用CURRENT_DATE或者NOW( )表示当前系统日期

3.字符串类型

数据类型大小类型说明
CHAR4字节用于表示固定长度大的字符串
VARCHAR实际长度+1用于表示可变长度的字符串
BIGCHAR用于表示固定可变长度的二进制数据
VARBINARY用于表示可变长度的二进制数据
BLOB0~65535用于表示二进制大数据
TINYTEXT0~255字节用于表示大文本数据
TEXT0~35535字节用于表示大文本数据
ENUM表示枚举类型,只能存储一个枚举字符串
SET表示字符串的对象,可以有零或多个
BIT1~64字节表示位字段类型
  • 表的约束

    约束条件解释
    PRIMARY KEY

    主键约束,表的唯一标识

    字段名 数据类型 primary key---单主键
    primary key (字段名1,字段名2,,字段名3,...,字段名n)  --多主键
    FOREIGN KEY外键约束
    NOT NULL

    非空约束

    字段名 数据类型 NOT NULL
    UNIQUE

    唯一约束

    字段名 数据类型 unique
    DEFAULT

    默认值约束,设置字段的默认值

    字段名 数据类型 default 默认值

    ?如何设置新纪录自动生成唯一ID?

字段名 数据类型 auto_increment

实际使用

create table biaoyi (
id int(4) primary key auto_increment,
name varchar(20) not null,
stu_id int unique,
grade float default 0);

举报

相关推荐

0 条评论