目录
数据库操作
一个数据库服务器上,可以把很多业务上联系的表,放到一起构成了一个逻辑上的"数据集合",称为数据库。
操作数据库的命令,也称为"SQL语句",也可以理解为一种编程语言。
创建数据库
create database 数据库名;
sql语句中的关键字大小写是不敏感的.
在创建数据库时,数据库名称是不能重复的,要保证唯一性!
在创建数据库时,可以加一些修饰,来处理上述问题:
create database if not exists 数据库名;
发现数据库存在,就不会在创建了,也不会因为数据库重名而报错。
在创建数据库时,mysql默认的字符集时拉丁文,不支持中文;在创建时要手动指定字符集,也就是编码方式支持中文的编码(CBK,UTF8)
character set 字符集名字/charset 字符集;
MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是
使用utf8mb4,建议使用utf8mb4
查看数据库
列出当前mysql服务器上所有的数据库。
show databases;
选择使用数据库
这操作是数据库中最关键的操作,主要就是对表进行增删改查。表是从属于数据库的,所以,要针对表操作,就要搞清楚是哪个数据库中的表。
use 数据库名;
删除数据库
drop database 数据库名;
删除数据库操作,是一个非常危险的操作!!!
删除操作,删掉的不仅仅是database,而且也删除了database中的所有表和表里的所有数据。
网上流传一句话:从删库,到跑路!
数据类型
数值类型
就是常见的整型和浮点型。
字符串类型
|----------------|----------------|------------|----------|----------|
| 数据类型 | 大小 | 说明 | 对应Java类型 | 对应C类型 |
| VARCHAR (SIZE) | 0-65,535字节 | 可变长度字符串 | String | char[] |
| TEXT | 0-65,535字节 | 长文本数据 | String | char[] |
| MEDIUMTEXT | 0-16 777 215字节 | 中等长度文本数据 | String | char[] |
| BLOB | 0-65,535字节 | 二进制形式的文本数据 | String | char[] |
日期类型
|-----------|-------|-------------------------------|------------------------------------|
| 数据类型 | 大 小 | 说明 | 对应java类型 |
| DATETIME | 8 字 节 | 范围从1000到9999年,不会进行时区的 检索及转换。 | java.util.Date、 java.sql.Timestamp |
| TIMESTAMP | 4 字 节 | 范围从1970到2038年,自动检索当前时 区并进行转换。 | java.util.Date、 java.sql.Timestamp |
表的操作
创建表
进行表操作的前提,一定要选择使用的数据库。
create table 表名(列名/字段 类型,列名/字段 类型....);
查看所有表
是查看当前选中的数据库中的所有表。
show tables;
查看表结构
desc 表名;
Field:字段、列名。
Type:类型。varchar(size)表实该类型最多存储几个字符,不是字节。当size为10,不是说立刻分配10字符空间,而是先分配一个比较小的空间;如果不够,自动扩充,最大空间不会超过10。int是四个字节,此时(11)表示的是显示的宽度,最多占据11个字符的宽度。
NULL:空值。YES表示允许为空。
key:索引类型。
Default:默认值。
Extra:扩充
删除表
drop table 表名;