MySql-基础知识

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,增加了速度并提高了灵活性。

基础操作

1.显示所有的数据库

show databases;

2.创建数据库

create database [if not exists] 名字 character set utf8mb4;

3.使用数据库

use 数据库名;

4.删除数据库

drop database [if exists] 数据库名;

删除数据库是一种非常危险的操作,一般不使用。

5.查询当前数据库服务使用的编码集

show variables like '%character%';

6.查看警告信息

show warnings;

数据类型

1.数值类型

数据类型大小说明对应Java类型
BIT[ (M) ]M指定位数,默认为1二进制数,M范围从1到64,存储数值范围从0到2^M-1常用Boolean对应BIT,此时默认是1位,即只能存0和1
TINYINT1字节Byte
SMALLINT2字节Short
INT4字节Integer
BIGINT8字节Long
FLOAT(M, D)4字节单精度,M指定长度,D指定小数位数。会发生精度丢失Float
DOUBLE(M,D)8字节Double
DECIMAL(M,D)M/D最大值+2双精度,M指定长度,D表示小数点位数。精确数值BigDecimal
NUMERIC(M,D)M/D最大值+2和DECIMAL一样BigDecimal

说明:在设计表的时候,涉及到ID字段(自动增长),直接使用bigint;涉及到金额等比较敏感的数据时,可以使用decimal类型,也可以使用bigintint表示。

2.字符串类型

数据类型大小说明对应Java类型
VARCHAR (SIZE)0-65,535字节可变长度字符串String
TEXT0-65,535字节长文本数据String
MEDIUMTEXT0-16 777 215字节中等长度文本数据String
BLOB0-65,535字节二进制形式的长文本数据byte[]

说明:在VARCHAR类型中,size表示的是字符的长度。字符和字节是不同的概念,比如,对于hello这种英文字母来说,它有5个字符, 也是5个字节;对于‘你好’这种中文来说,它也有5个字符,但是字节的多少和编码格式有关,比如GBK编码使用两个字节表示一个汉字,UTF-8编码使用三个或四个字节来表示一个字符。
文本格式和二进制格式的区别:用文本编辑器打开的文件,可以明文打开的就是文本,如果打开后是乱码就是二进制。

3.日期类型

数据类型大小说明对应Java类型
DATATIME8 字节范围从1000到9999年,不会进行时区的检索及转换java.util.Date、java.sql.Timestamp
TIMESTAMP4字节范围从1970到2038年,自动检索当前时区并进行转换java.util.Date、java.sql.Timestamp

说明:涉及到日期建议使用DATATIME数据类型。

创建表

进入数据库之后,查看当前数据库是否有表,使用show tables命令。
在这里插入图片描述
1.创建表

CREATE TABLE 表的名字 (
 字段名1 数据类型,
 字段名2 数据类型,
 字段名3 数据类型
);

多个字段用逗号隔开,最后一个字段没有逗号,所有关于字段的定义包在小括号中。
在这里插入图片描述
2.查看表结构

DESC 表名;

在这里插入图片描述
3.删除表(危险操作)可以一次删除多张表

DROP [TEMPORARY] TABLE [IF EXISTS] 表名 [, 表名] ...

在这里插入图片描述

练习:

有一个商店的数据,记录客户及购物情况,有以下三个表组成:
商品goods(商品编号goods_id,商品名goods_name, 单价unitprice, 商品类别category, 供应商provider)。

-- 创建一个商品表
# 创建一个商品表
/*
   创建一个商品表
*/
create table goods(
    goods_id bigint,
    goods_name varchar(255),
    unitprice decimal,
    category varchar(255),
    provider varchar(255)
);

在这里插入图片描述


继续加油~
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值