此处的数据库就指的是MySQL服务器中包含的一个个数据库。
【SQL语句】
create database 数据库名;
【注意】:
【使用示例】

【补充】:
没执行成功一行SQL语句都会显示执行时间,例如上面的0.01 sec,0.01sec对于计算机来说是很慢的,对于关系型数据库来说,操作效率是比较低的(读取磁盘、关系结构等所导致),这也是非关系型数据库产生的原因,非关系型数据库的约束更少,效率更高,更适合当下流行的"分布式系统"。
创建数据库的时候还可以指定字符集和校验规则
字符集,描述了存储的数据都支持什么样的字符
校验规则,描述了当前字符之间如何进行比较
create database if not exists 数据库名 character set utf8;
如果要创建的数据库不存在就创建,该数据库使用的字符集为utf8
【关于字符集】
字符集的本质是,使用数字表示各种语言文字的符号,常见的字符集有ASCII,GBK和UTF8,MySQL默认使用拉丁文,不支持中文,要想插入中文需要手动配置,UTF8采用变长编码的方式,如果想表示的字符是英文字符那么一个字节就够了,如果想要表示的字符是和汉字,可能需要用2~4个字节(因为汉字常见字加生僻字有6w左右),UTF8被视为是"世界通用的字符编码",也是当下最主流使用的字符编码
【有坑代码】:下面的代码使用的C语言编写
char* s="秀";
printf("%d\n",strlen(s));
//代码所表达的含义是:一个汉字在存储中占用几个字节
//答案:具体看是采用的哪种编码方式,GBK为汉字编码占用2个字节
//UTF8为汉字编码占用2~4个字节
【SQL语句】
show databases;
【使用示例】

要想针对某个数据库进行具体操作(存入数据/查询数据等)就需要先选中数据库
【SQL语句】
use 数据库名;
【使用示例】

【SQL语句】
drop database 数据库名;
【注意】:
采取哪些措施能避免出现删库或者把删库的代价降到最低呢?
数据类型一方面能方便我们对数据进行处理,另一方面能对我们插入的数据进行校验和检查。
分为整型和浮点型

【补充】:
- FLOAT(M,D):M表示整个数字的有效数字位数不超过M;D表示数字的小数点后面的位数不超过D
- DECIMAL(M,D):相比于FLOAT和DOUBLE能够更精确的表示小数,DEMICAL本质上是通过字符串来表示一个浮点数,对与FLOAT和DOUBLE类型表示的浮点数是不够精确的,例如计算0.1+0.2,结果可能就不是0.3,因此有了DEMICAL来更精确的表示小数,但同时也会带来时间和空间上的开销

【补充】:

【补充】:
时间戳:从1970年1月1日0时0分0秒作为基准时刻,计算当前时刻与基准时刻的秒数之差,在计算机中存储的都是时间戳,而像下面这种,跟根据时间戳进行的换算,方便我们观察
需要操作数据库中的表时,需要先使用该数据库:
【SQL语句】
create table 表名 (列名 类型,列名 类型.....);
【使用示例1】

【注意】:

查看当前选中的数据库中有哪些表
【SQL语句】
show tables;
【使用示例】

查看表里的列和类型
【SQL语句】
desc 表名;
【使用示例】

【SQL语句】
drop table 表名;
【使用示例】

有一个商店的数据,记录客户及购物情况,有以下三个表组成:
【SQL语句】
create table goods(
goods_id int,
goods_name varchar(20),
unitprice decimal(3,1),
category varchar(20),
provider varchar(20)
);
create table customer(
customer_id int,
name varchar(20),
address varchar(20),
email varchar(20),
sex varchar(5),
card_id int
);
create table purchase(
order_id int,
customer_id int,
goods_id int,
nums int
);
