【MySQL】数据库MySQL基础知识与操作

作者主页:paper jie_博客

本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。

本文录入于《MySQL》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造,将MySQL基础知识一网打尽,希望可以帮到读者们哦。

其他专栏:《算法详解》《C语言》《javaSE》《数据结构》等

内容分享:本期将会分享MySQL的一些基本知识和操作

目录

数据库常用的数据类型

数值类型

字符串类型

日期类型

数据库的操作

显示数据库

创建数据库

使用数据库

删除数据库

表的操作

使用数据库

 查看表结构

创建表

删除表

总结


数据库常用的数据类型

数值类型

这里的分为整形和浮点型

数据类型大小说明对应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字节双精度浮点型,M指定长度,D指定小数位数,会发生精度丢失Double
decimal(M,D)M/D最大值+2双精度,M指定长度,D表示小数点位数,精确数值BigDecimal
numerlc(M,D)M/D最大值+2双精度,M指定长度,D表示小数点位数,精确数值BigDecimal

这里注意:

数值类型可以指定为无符号unsigned,表示不取负数

1字节(bytes) = 8bit

整形类型的范围:

1 有符号范围:-2^(类型字节数*8-1)到2^(类型字节数*8-1) -1

2 无符号类型范围:0到2^(类型字节数*8-1) -1

这里我们其实可以不使用unsigned,因为对于int类型放不下的数据,int unsigned也放不下,这样的话,还不如将int类型升级为bigint类型

字符串类型

数据类型大小说明对应Java类型
varchar(size)0 ~ 65535字节可变长度字符串String
text0 ~ 65535字节长文本数据String
mediumtext0 ~ 16777215字节中等长度文本数据String
blob0 ~ 65535字节二进制形式的长文本数据byte[]

我们一般字符串类型使用varchar就足够了

日期类型

数据类型大小说明对应Java类型
datetime8字节范围从1000到9999年,不会进行时区的检索和转换

java.uti.Data

java.sql.Timestamp

timestamp4字节范围从1970到2038年,自动检索当前时区并进行转换

java.uti.Data

java.sql.Timestamp

这里建议使用datetime,因为timestamp这个时间戳快结束了,到2038年就不能使用了

数据库的操作

显示数据库

show databases;

创建数据库

create database 数据库名;

 

这里还需要注意一个点:我们创建字符集的时候,系统默认使用字符集:utf8,我们也可以自己指定字符集

create database 数据库名 set utf8;

字符集有几种常用的:

1 GBk 两个字节表示一个中文,Windows上的简易中文版就是默认使用的GBk,因为GDK最多只能表示6万多个不同的字符,中文加起来差不多就是万多个,其他的语言就表示不了了

2 utf8 它是一种变长编码,可以是1个字节,2个字节,3个字节.....,汉字是三个字节,这样子就可以表示多种语言了

3 utf8mb4 是utf8的补全,补全了utf8不能表示emoji表情的缺陷

4 unicode java中的char使用的就是unicode,但是String使用的是utf8,因为unicode只能表示单个字符,将多个unicode表示的字符放在一起,它是区分不了哪里是哪个字,就像没有标点符号一样

这里建议在编码的时候使用utf8mb4,因为utf8没有包含一些复杂的中文字符

使用数据库

use 数据库名;

删除数据库

drop database 数据库名;

这里要注意: 数据库删除后,是很难恢复的,在以后工作中,这个操作需要万分谨慎!!!!!!!

表的操作

这里大家可以理解一下里面的关系:

使用数据库

操作数据库中的表时,需要先使用该数据库:

use 数据库名;

 查看表结构

desc 表名;

创建表

create table 表名(field1 类型, field2 类型);

删除表

drop table 表名;

总结

常用的数据类型:

整形:int 

浮点数类型: deximal(M,D)

字符串类型: varchar(size) 

日期类型: datetime

操作数据库: 

显示: show databases;

创建: create database 数据库名;

使用: use 数据库名;

删除: drop 数据库名;

操作表:

显示表: desc 表名;

创建表: create table 表名;

删除表: drop 表名;


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/161066.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【PyTorch 卷积】实战自定义的图片归类

前言 卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一,它通过卷积层、池化层、全连接层等结构,可以有效地处理如时间序列和图片数据等。关于卷积的概念网络上也比较多,这里就不一一描述了。…

加密解密基础知识Crypto Basics

base64编码 编码不是真正的密码学,但它在围绕加密功能的各种标准中被大量使用。尤其是 Base64 编码。 Base64 编码是一种用于将各种字节转换为特定字节范围的技术。此特定范围是 ASCII 可读字节。 这样,您可以更轻松地传输二进制数据,例如密…

【Nginx38】Nginx学习:SSL模块(二)错误状态码、变量及宝塔配置分析

Nginx学习:SSL模块(二)错误状态码、变量及宝塔配置分析 继续我们的 SSL 模块的学习。上回其实我们已经搭建起了一个 HTTPS 服务器了,只用了三个配置,其中一个是 listen 的参数,另外两个是指定密钥文件的地址…

python-在系统托盘显示CPU使用率和内存使用率

一、添加轮子 1.添加托盘区图标库 infi.systray from infi.systray import SysTrayIcon 2.添加图像处理库 Pillow from PIL import Image, ImageDraw, ImageFont 3.添加 psutil 来获取CPU、内存信息 import psutil 二、完整代码 from infi.systray import SysTrayIcon …

一个很不错的开源图像库 Graphics32

Graphics32 是一个很不错的开源图像库。通过调试和跟踪Graphics32 的代码,可以快速的熟悉图像处理的一些知识。例外Graphics32有着很不错的性能。在不使用DirectX的情况下能达到一个惊人的速度,可以作为一个简单的2D引擎来使用,就功能上讲比那…

如何使用Selenium处理Cookie,今天彻底学会了

01 cookie介绍 HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接,这就意味着服务器无法从连接上跟踪会话。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求…

MyBatis实现多表映射、分页显示、逆向工程

目录 一、MyBatis实现多表映射 1.1 实体类设计 1.2 一对一关系实现案例 1.3 对多配置实现案例 1.4 设置自动映射与n张表关联映射 二、MyBatis实现分页功能 2.1 mybatis插件工作原理 2.2 引入插件与插件的使用 三、逆向工程插件 3.1 什么是逆向工程 3.2 MyBat…

web前端——HTML+CSS实现奥运五环

web前端——HTMLCSS实现奥运五环 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</titl…

“我“何去何从?2024年软件测试职业发展方向?运筹帷幄方能决胜千里之外...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 测试的职责无非就…

C++中的多态

C中的多态 一、概念二、虚函数1、概念2、重写&#xff08;覆盖&#xff09;3、重载、覆盖&#xff08;重写&#xff09;、隐藏&#xff08;重定义&#xff09;的对比&#xff08;1&#xff09;重载&#xff08;2&#xff09;重写&#xff08;覆盖&#xff09;&#xff08;3&…

【C++】set和multiset

文章目录 关联式容器键值对一、set介绍二、set的使用multiset 关联式容器 STL中的部分容器&#xff0c;比如&#xff1a;vector、list、deque、forward_list(C11)等&#xff0c;这些容器统称为序列式容器&#xff0c;因为其底层为线性序列的数据结构&#xff0c;里面存储的是元…

SpringBoot 将 jar 包和 lib 依赖分离,dockerfile 构建镜像

前言 Spring Boot 是一个非常流行的 Java 开发框架&#xff0c;它提供了很多便利的功能&#xff0c;例如自动配置、快速开发等等。 在使用 Spring Boot 进行开发时&#xff0c;我们通常会使用 Maven 或 Gradle 进行项目构建。 本文将为您介绍如何使用 Maven 将 Spring Boot …