MySQL数据库

数据库

1.1什么是数据库

数据库(DB,DataBase)

概念:数据仓库,软件

作用:用来存储数据,管理数据

1.2数据库的分类

关系型数据库:(SQL)

  • MySQL,Oracle,Sql Server
  • 通过表和表之间,行和列之间的关系进行数据的存储,学员信息表

非关系型数据库:(NoSQL)

  • Redis,MongDB
  • 非关系型数据库,对象存储,通过对象的自身属性来决定。

DBMS(数据库管理系统)

  • 数据库的管理软件,科学有效的管理我们的数据。维护和获取数据

  • MySQL,数据库管理系统

    DDL 数据库定义语言

    DML 数据库操作语言

    DQL 数据库查询语言

    DCL 数据库控制语言

1.3操作数据库中的表

1.数据库的列类型

1.数值

  • tinyint 十分小的数据 1个字节
  • smallint 较小的数据 2个字节
  • mediumint 中等大小的数据 3个字节
  • int 标准的整数 4个字节
  • bigint 较大的数据 8个字节
  • float 浮点数 4个字节
  • double 浮点数 8个字节(精度问题)
  • decimal 字符串形式的浮点数 金融计算的时候一般使用,decimal(M,D)占M+2个字节

2.字符串

  • char 字符串固定大小的 0~255

  • varchar 可变字符串 0~65535 常用的变量 String

  • tinytest 微型文本 2^8-1

  • text 文本串 2^16-1 保存大文本

3.时间日期

java中的包 java.util.Date

  • date YYYY-MM-DD,日期格式
  • time HH: mm: SS时间格式
  • datetime YYYY-MM-DD HH: mm: SS 最常用的时间格式
  • year年份表示

4.null

  • 没有值,未知
  • 使用NULL进行运输,结果为NULL

2.数据库的字段属性(重点)

Unsigned:

  • 无符号的整数
  • 声明了该列不能声明为负数

zerofill:

  • 0填充

  • 不足的位数,使用0来填充, int(5),5------00005

自增:

  • 自动在上一条记录的基础上+1(默认)

  • 通常用来设计唯一的主键 ,比如 index,必须是整数类型

  • 可以自定义主键自增的起始值和步长

非空NULL NOT NULL

  • 设置为not null,如果不给它赋值,就会报错

  • NULL,如果不设置,默认就是NULL

默认:

  • 设置默认的值!

  • sex,默认值为男,如果不指定该列的值,则会有默认的值!

3.阿里巴巴设计规范

  • id 主键
  • version 乐观锁
  • is_delete 伪删除
  • gmt_create 创建时间
  • gmt_update 修改时间

1.4.数据库引擎

InnoDB 5.5后默认使用

MyISAM 早些年使用

MyISAMInnoDB
事务支持不支持不支持
数据行锁定不支持支持
外键约束不支持支持
全文索引支持不支持
表空间大小较小较大,MyISAM的2倍

常规使用操作:

  • MyISAM 节约空间,速度较快

  • InnoDB 安全性高,事务处理,多表多用户操作

在物理空间存在的位置

  • 默认路径保存在C:\ProgramData\MySQL\MySQL Server 5.7\Data

  • MySQL的配置文件在C:\ProgramData\MySQL\MySQL Server 5.7\my.ini

所有的数据库文件都存放在data目录下,本质是文件存储

引擎文件在物理文件上的区别

  • InnoDB 表在数据库中只有一个*.frm文件,和它的.ibd文件

  • MyISAM对应文件

    • *frm 表结构的定义文件
    • *MYD 数据文件(data)
    • *MYI 索引文件(index)

设置数据库表的字符编码

CHARSET=utf8

不设置的话,会是mysql默认的字符集编码Latin1 (不支持中文)

在my.ini中配置默认的编码

character-set-server=utf8

sql语句

数据库

操作数据库>操作数据库中的表>操作数据库表中的数据

连接数据库

mysql -uroot -proot

创建数据库

create database westos;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xR6uI95y-1666777952489)(C:\Users\雷雄雄\Desktop\图片\新建数据库.JPG)]

查看所有数据库

show databases;

查看创建数据库的语句

show create database school;

删除数据库

drop database westos;

切换数据库

use cs;

操作数据库中的表

show tables;

显示表的所有信息

describe standent;

查看表的创建语句

show create table student;

创建一个学生表

# if not exists如果这个表不存在就创建
create table if not exists student(
# auto_incremen 自增  		comment '学号' 注释
id int(4) not null auto_increment comment '学号',
# default '匿名' 默认值
name varchar(30) not null default '匿名' comment '姓名',
pwd varchar(20) not null default '123456' comment '密码',
sex varchar(2) not null default '男' comment '性别',
birthday datetime default null comment '出生日期',
address varchar(100) default null comment '家庭住址',
email varchar(50) default null comment '邮箱',
#主键声明
primary key(id)

#存储引擎 		默认字符集				注释
)Engine=innodb default charset=utf8 comment '学生表';

格式

create table [if not exists] 表名(
	字段名	字段类型	[属性][索引][注释],
    字段名	字段类型	[属性][索引][注释],
    ...
	[primary key("主键字段")]
)[表类型] [字符集] [注释];

显示表的结构

desc student;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雷雄雄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值