服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - MySQL 数据库的对库的操作及其数据类型

MySQL 数据库的对库的操作及其数据类型

2022-01-20 18:16吞吞吐吐大魔王 Mysql

这篇文章主要介绍了MySQL 数据库的对库的操作及其数据类型,下面文字围绕数据库的对库的操作及其数据类型的相关资料展开详细介绍,需要的小伙伴可以参考一下,希望对你有所帮助

1. 数据库的操作

注意:

  • SQL 语句不区分大小写,以下将以小写的语句来演示
  • 每个 SQL 语句后面都要加英文的分号(个别语句不用加分号,但是推荐无脑全加)
  • [] 中括号中的语句是可选的
  • 库名、表名、列名等等不能和关键字相同,如果一定要用关键字为名,则可以通过反引号把名字引起来

1.1 显示数据库

语法:

show databases;

示例:

MySQL 数据库的对库的操作及其数据类型

补充:

(0.00 sec) :表示执行这条语句花费的时间,即花费了0.00秒

1.2 创建数据库

语法:

create database [if not exists] 数据库名 [create_specification [,create_specification]];

  • if not exists:表示如果系统没有该数据库,则新建;如果有,则不创建
  • create_specification:包含两个内容 character set 字符集名 和 collate 数据库字符集的校验规则
  • 没有指定字符集和其校验规则时,系统默认使用的字符集是:latin1,为了更好的支持中文,可以修改成 utf8mb4 或者 GBK

示例一:

MySQL 数据库的对库的操作及其数据类型

示例二:

MySQL 数据库的对库的操作及其数据类型

示例三:

MySQL 数据库的对库的操作及其数据类型

补充:

(1)其实 if not exists 这个语句很重要。因为我们现在是单行输入,SQL 语句如果报错,影响也不大,我们只要重新输入正确的就行。但是如果先将 SQL 写到文件中,然后批量执行它,那么只要其中某条语句报错了,后面的 SQL 语句就不能继续执行了
(2)字符集: 是指多个字符的集合。不同的字符集包含的字符个数不一样、包含的字符不一样、对字符的编码方式也不一样。例如 GB2312 是中国国家标准的简体中文字符集,GB2312 收录简化汉字(6763个)及一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语拼音符号、汉语注音字母,共 7445 个图形字符。而 ASCII 字符集只包含了128字符,这个字符集收录的主要字符是英文字母、阿拉伯字母和一些简单的控制字符。另外,还有其他常用的字符集有 GBK 字符集、GB18030 字符集、Big5 字符集、Unicode 字符集等。
(3)字符集校验规则: 指的是字符集比较大小的时候依据的准则,比如我们比较a和B的大小,如果不考虑大小写,那么 a<B,如果考虑大小写,则 a>B,也就是说,同一字符集,不同的比较规则,对某列数据的排序结果也就会产生不同。MySQL 中的字符校验规则可以通过 show collation;语法来查看,如下:

MySQL 数据库的对库的操作及其数据类型

我们可以看到,结果中一共有195中比较规则,其中,每种字符集都包含自己默认的校验规则,我们简单解释一条:utf8_polish_ci 以波兰语为规则进行对比,这个校验规则由三个部分组成,比较规则名称以与其关联的字符集的名称开头,utf8 是指的是 utf8 字符集的比较规则,polish 指的是波兰语,_ci 指的是不区分大小写。
(4)MySQL 种的 utf8 编码不是真正意义上的 utf8,因为它没能包含某些复杂的中文字符以及一些符号,如:emoji 类表情。MySQL 真正的 utf8 字符集是 utf8mb4

1.3 选中数据库

语法:

use 数据库名;

示例:

MySQL 数据库的对库的操作及其数据类型

1.4 删除数据库

语法:

drop database [if exists] 数据库名;

示例:

MySQL 数据库的对库的操作及其数据类型

补充:

删库其实是一件很危险的事情,emmm,进公司删库的话很容易进去

 

2. MySQL 中的数据类型

介绍:

MySQL 中定义数据字段的类型对数据库的优化是非常重要的。 MySQL 支持多种类型,大致可以分为三类:数值、日期/时间和 字符串 (字符) 类型。 MySQL 支持所有标准 SQL 数值数据类型。

2.1 数值类型

MySQL 数据库的对库的操作及其数据类型

补充:

  • 数值类型可以指定为无符号(unsigned),表示不取负数,不建议使用,官方文档明确即将弃用
  • MySQL 的数值类型无单独的字符类型 char,但是有字符串类型
  • 在之前写的 剖析 C 语言数据在内存中的存储 这篇文章中写过关于浮点数的存储,由于浮点数的存储其实是一种二进制的科学计数法的方式,所以只能精确表示如:0.5、0.25、0.125 这类的数值,其余只能表示一个近似值
  • Java 中的 BigDecimal 是用来精确表示浮点数的,是用了变长内存存储的方式,类似于字符串。但是也付出了需要更多空间和时间的代价
  • 表示钱的类型: 虽然钱可以用浮点数表示,但是由于钱其实都是整数,所以可以直接用 int 类型,单位就是分

2.2 字符串类型

MySQL 数据库的对库的操作及其数据类型

补充:

  • varchar(size) 的 size 表示的是这个字符串的最大长度,单位是字符
  • 汉字是一个字符,但不一定是一个字节
  • text 没有参数,会根据用户插入的数据来动态确定占用的空间
  • 前三个字符串类型都是保存的文本类型的数据,blob 是保存的二进制类型的数据
  • 二进制的数据例如:图片、mp3、视频、world、ppt、excel、.class 文件等等
  • 表示图片的类型: 虽然图片是二进制类型的数据,但是由于 blob 能够存储数据的最大值为 64k,所以很多图片不使用,因此可以将图片以文件的形式放到硬盘,然后在数据库中记录这个图片的路径,这时就可以用一个字符串类型就轻松搞定了

2.3 日期类型

MySQL 数据库的对库的操作及其数据类型

补充:

timestamp 意为时间戳,时间戳是一种计算机表示时间的方式,如:

MySQL 数据库的对库的操作及其数据类型

注意:2038年这个 timestamp 类型就用不了,因此推荐写代码的时候使用 datetime

到此这篇关于MySQL 数据库的对库的操作及其数据类型的文章就介绍到这了,更多相关MySQL 对库操作及其数据类型内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_51367845/article/details/121327019

延伸 · 阅读

精彩推荐
  • MysqlMySQL 数据备份与还原的示例代码

    MySQL 数据备份与还原的示例代码

    这篇文章主要介绍了MySQL 数据备份与还原的相关知识,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...

    逆心2972019-06-23
  • MysqlMySQL锁的知识点总结

    MySQL锁的知识点总结

    在本篇文章里小编给大家整理了关于MySQL锁的知识点总结以及实例内容,需要的朋友们学习下。...

    别人放弃我坚持吖4362020-12-14
  • Mysql浅谈mysql 树形结构表设计与优化

    浅谈mysql 树形结构表设计与优化

    在诸多的管理类,办公类等系统中,树形结构展示随处可见,本文主要介绍了mysql 树形结构表设计与优化,具有一定的参考价值,感兴趣的小伙伴们可以参...

    小码农叔叔5242021-11-16
  • Mysql详解MySQL中的分组查询与连接查询语句

    详解MySQL中的分组查询与连接查询语句

    这篇文章主要介绍了MySQL中的分组查询与连接查询语句,同时还介绍了一些统计函数的用法,需要的朋友可以参考下 ...

    GALAXY_ZMY5442020-06-03
  • MysqlMySQL数据库varchar的限制规则说明

    MySQL数据库varchar的限制规则说明

    本文我们主要介绍了MySQL数据库中varchar的限制规则,并以一个实际的例子对限制规则进行了说明,希望能够对您有所帮助。 ...

    mysql技术网4192019-11-23
  • Mysql解决MySQl查询不区分大小写的方法讲解

    解决MySQl查询不区分大小写的方法讲解

    今天小编就为大家分享一篇关于解决MySQl查询不区分大小写的方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起...

    Veir_dev5592019-06-25
  • MysqlERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event(): read error, data_len: 438, event_type: 2 ...

    MYSQL教程网6412020-03-13
  • Mysqlmysql 不能插入中文问题

    mysql 不能插入中文问题

    当向mysql5.5插入中文时,会出现类似错误 ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column ...

    MYSQL教程网5722019-11-25