MySQL数据库(二)

文章介绍了MySQL的基本操作,包括创建、查看和删除数据库,强调了字符集对中文支持的重要性,以及各种数值、字符串和日期数据类型的详细说明。在数据类型中,提到了varchar的动态长度特性和decimal的精度优势。
摘要由CSDN通过智能技术生成

MySQL是一个客户端-服务器结构的程序。

MySQL服务器是真正的本体,负责保存和管理数据,数据都是存在硬盘上的。

数据库的操作

1.命令行客户端

2.图形化客户端

后续均使用命令行客户端

打开命令行客户端,输入密码闪退:找到错误信息

把快捷方式拖到cmd中执行,就可以看到报错信息。

 操作数据库的命令,也称为“SQL”语句。

数据库的操作,此处的“数据库”指的是一个逻辑上的数据集合。一个mysql服务器上,可以在硬盘上存储组织很多数据(通过表来组织),就可以把有关联的一些表放到一起,构成一个数据集合,此时就成为数据库。一个mysql服务器上可以有多个这样的数据库。

 1.创建数据库

create database 数据库名;

create database spj;

“create”“database”是sql中有特定含义的单词,叫做关键字。数据库名,表名,列名都不能和关键字重复。关键字大小写不敏感。

数据库创建要求不能重复,在创建时,加上一个修饰。此时就不会因为数据库同名而报错。发现数据库存在,是不会继续创建数据库的。“if not exists”可避免sql报错。再批量执行的情况下,如果一条sql报错了,后面的将无法继续执行。

create database if not exists spj;

创建数据库时,可手动指定字符集。mysql默认字符集是拉丁文,不支持中文。如果需要保存中文,必须在创建数据库时,手动指定编码方式为支持中文的编码(GBK,UTF8)。不同的字符集,不同的编码方式下,一个汉字占几个字节是不同的。主要使用utf8作为编码方式(变长编码),不仅支持中文,还支持任何一种语言。使用utf8编码,一个汉字通常3个字节。

character set 字符集名字/charset 字符集名字;

create database spj charset utf8;

mysql中的utf8不是完全体的utf8,少了一些emoji,utf8mb4则是完全体。

2.查看数据库

列出当前mysql服务器上有哪些数据库

show databases;

3.选中数据库

use 数据库名;

4.删除数据库

drop database 数据库名;

drop database spj;

 删除的不仅是database,也删除了database中的所有表和表里的数据。

常用数据类型

1.数值类型

数据类型大小说明对应java类型
bit[(M)]M指定位数,默认为1二进制数,M为1-64,存储数值范围为0-2^M-1boolean
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

使用decimal表示小数,精确度更高,但运算速度会变慢,占用空间也更多。

2.字符串类型

数据类型大小(字节)说明对应java
varchar(size)0-65,535可变长度字符串string
text0-65,535长文本数据string
mediumtext0-16,777,215中等长度文本数据string
blob0-65,535二进制形式的长文本byte[]

65,535=64K

一个汉字,算是一个字符。但是可能是对应多个字节。

varchar(size):size表示该类型里最多存储几个字符(不是字节)。varchar(10),不是说,当前立即分配10个字符的存储空间,会先一个比较小的空间,如果不够,自动扩展,最大空间不超过10。

blob:存储二进制数据

文本数据:存储的都是字符,都可以在对应的码表上查到

二进制数据:在吗表上查不到,如音乐,图片,视频.......

3.日期类型

数据类型大小说明
datetime8字节范围从1000-9999年,不会区分失去的检索及转换。
timestamp4字节1970-2038年,自动检索当前时区并进行转换

TIMESTAMP:时间戳,以1970-1-1 0:0:0作为基准,计算当前时刻与基准时刻的秒数/毫秒数/微秒数之差。

重要:int long double decimal varchar datetime

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值