脚本宝典收集整理的这篇文章主要介绍了【MySQL 数据库】MySQL 的对库的操作及其数据类型,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
语法:
show databases;
示例:
补充:
(0.00 sec):表示执行这条语句花费的时间,即花费了0.00秒
语法:
create database [if not exists] 数据库名 [create_sPEcification [,create_specification]];
示例一:
示例二:
示例三:
补充:
- 其实 if not exists 这个语句很重要。因为我们现在是单行输入,SQL 语句如果报错,影响也不大,我们只要重新输入正确的就行。但是如果先将 SQL 写到文件中,然后批量执行它,那么只要其中某条语句报错了,后面的 SQL 语句就不能继续执行了
- 字符集: 是指多个字符的集合。不同的字符集包含的字符个数不一样、包含的字符不一样、对字符的编码方式也不一样。例如 GB2312 是中国国家标准的简体中文字符集,GB2312 收录简化汉字(6763个)及一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语拼音符号、汉语注音字母,共 7445 个图形字符。而 ASCII 字符集只包含了128字符,这个字符集收录的主要字符是英文字母、阿拉伯字母和一些简单的控制字符。另外,还有其他常用的字符集有 GBK 字符集、GB18030 字符集、Big5 字符集、Unicode 字符集等。
- 字符集校验规则: 指的是字符集比较大小的时候依据的准则,比如我们比较a和B的大小,如果不考虑大小写,那么 a<B,如果考虑大小写,则 a>B,也就是说,同一字符集,不同的比较规则,对某列数据的排序结果也就会产生不同。MySQL 中的字符校验规则可以通过
show collation;
语法来查看,如下: 我们可以看到,结果中一共有195中比较规则,其中,每种字符集都包含自己默认的校验规则,我们简单解释一条:utf8_polish_ci
以波兰语为规则进行对比,这个校验规则由三个部分组成,比较规则名称以与其关联的字符集的名称开头,utf8
是指的是utf8
字符集的比较规则,polish
指的是波兰语,_ci
指的是不区分大小写。- MySQL 种的 utf8 编码不是真正意义上的 utf8,因为它没能包含某些复杂的中文字符以及一些符号,如:emoji 类表情。MySQL 真正的 utf8 字符集是 utf8mb4
语法:
use 数据库名;
示例:
语法:
drop database [if exists] 数据库名;
示例:
补充:
删库其实是一件很危险的事情,emmm,进公司删库的话很容易进去
介绍:
MySQL 中定义数据字段的类型对数据库的优化是非常重要的。 MySQL 支持多种类型,大致可以分为三类:数值、日期/时间和 字符串 (字符) 类型。 MySQL 支持所有标准 SQL 数值数据类型。
数据类型 | 大小 | 说明 | 对应 Java 类型 |
---|---|---|---|
bIT[(M)] | M 指定位数,默认为1 | 二进制数,;m 范围从1到64,存储数值范围从0到2M-1 | 常用 Boolean 对应 bit,此时默认是1位,即只能存储0和1 |
tinyint | 1字节 | Byte | |
smallint | 2字节 | Short | |
int | 4字节 | Integer | |
bigint | 8字节 | Long | |
float(M,D) | 4字节 | 单精度,M 表示有效数字长度,D 表示小数位数。会发生精度丢失 | Float |
double(M,D) | 8字节 | 双精度,M 表示有效数字长度,D 表示小数位数。会发生精度丢失 | Double |
decimal(M,D) | M 与 D 的最大值+2 | 双精度,M 表示有效数字长度,D 表示小数位数。是精确数值 | BigDecimal |
numeric(M,D) | M 与 D 的最大值+2 | 同上 | BigDecimal |
补充:
- 数值类型可以指定为无符号(unsigned),表示不取负数,不建议使用,官方文档明确即将弃用
- MySQL 的数值类型无单独的字符类型 char,但是有字符串类型
- 在之前写的 剖析 C 语言数据在内存中的存储 这篇文章中写过关于浮点数的存储,由于浮点数的存储其实是一种二进制的科学计数法的方式,所以只能精确表示如:0.5、0.25、0.125 这类的数值,其余只能表示一个近似值
- Java 中的
BigDecimal
是用来精确表示浮点数的,是用了变长内存存储的方式,类似于字符串。但是也付出了需要更多空间和时间的代价- 表示钱的类型: 虽然钱可以用浮点数表示,但是由于钱其实都是整数,所以可以直接用 int 类型,单位就是分
数据类型 | 大小 | 说明 | 对应 Java 类型 |
---|---|---|---|
vArchar(size) | 0到65535字节 | 可变长度字符串,size 表示该字符串最大的长度 | String |
text | 0到65535字节 | 长文本数据 | String |
mediumtext | 0到16777215字节 | 中等长度文本数据 | String |
blob | 0到65535字节 | 二进制形式的长文本数据 | byte[] |
补充:
数据类型 | 大小 | 说明 | 对应 Java 类型 |
---|---|---|---|
datetime | 8字节 | 范围从1000到9999年,不会进行时区的检索及转换 | java.util.Date 、 java.sql.Timestamp |
timestamp | 4字节 | 范围从1970到2038年,自动检索当前时区并进行转换 | java.util.Date 、java.sql.Timestamp |
补充:
- timestamp 意为时间戳,时间戳是一种计算机表示时间的方式,如
- 注意2038年,这个 timestamp 类型就用不了,因此推荐写代码的时候使用 datetime
以上是脚本宝典为你收集整理的【MySQL 数据库】MySQL 的对库的操作及其数据类型全部内容,希望文章能够帮你解决【MySQL 数据库】MySQL 的对库的操作及其数据类型所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。