目录
1、初识数据库
1.1 什么是数据库
1.2 什么是MySQL
2、数据库
2.1 数据库服务&数据库
2.2 C/S架构
3、 初识SQL
3.1 什么是SQL
3.2 SQL分类
4、使用SQL
4.1 查看所有数据库
4.1.2 语句解析
4.2 创建数据库
4.2.1 if not exists校验
4.2.2 手动明确字符集和排序规则
4.2.3 SQL语句创建数据库
4.3 查看当前数据库服务的全局默认字符集
首先,我们之前所学的如Java、C++等编程语言是用来处理用户数据的;而数据库是用来保存用户数据的,其底层应用了一些合适的数据结构对数据进行管理。
数据库可以将数据保存在磁盘(外存)中,实现了对数据的持久化,解决了程序重启或开关机后数据丢失的问题。
MySQL就是一个开源、免费、应用广泛的数据库软件。
MySQL是一个关系型数据库。
机器提供的数据库服务中可以存在多个数据库,而每个数据库中又存在着多张数据表,每张数据表都有相关的信息:
在表中,每一列称为字段、列,可以理解为Java中的属性;每一行,即所有列组成的一条记录(一行数据)称为一个数据行。
故,总结如下:
C- Client(客户端),S-Serve(服务端)
理解C/S架构,我们需要先了解以下定义:
请求与响应是成对出现的。
对于客户端与服务器之间的交互模型,我们称之为C/S架构。
注意:客户端与服务器之间是通过网络进行交互的。127.0.0.1 这个IP始终代表本机IP(无论是否有网络)。
数据库用来保存数据,如果要操作数据库需要使用SQL。
SQL是一门语言,专门针对操作数据库的语言,我们只需掌握增删查改操作即可。
我们只需学习DDL与DML,DCL主要使用于运维相关。
查看当前所有数据库:show databases;
如下图所示:
其中,红色标记出来的都是MySQL自带的数据库记录是一些关于MYSQL自身的一些配置,性能,系统变量信息:
输入技巧:
1.Ctrl+C 重新开始新一行的输入。
2.若语句太长,只要没有遇见;回车即可在下一行继续上一行的输入。
SQL语句是大小写不敏感的,所以以下两种语句是相同的:
create database if not exists Java113;
CREAT DATABASE IF NOT EXISTS JAVA113;
其中,if not exists的作用是检查要创建的数据库是否存在,若不存在则创建,若存在则提示警告信息。
查看警告信息:show warnings;
注意:
在实际的工作中,执行SQL语句时,不是手动一条一条执行的,而是批量一起执行,为了不让某一条语句的错误影响整个执行流程,都会加上一些类似于if not exists 的校验,防止因为某条SQL出错导致整个SQL中断执行。
在创建数据库时,强烈建议大家手动明确字符集和排序规则!!!
故完整创建数据库的SQL语句如下(if not exists校验 && character set ... collate...):
注:MySQL中允许开发者使用关键字命名,但是在使用的时候要用反引号把关键字引起来
如:create database if not exists `database` character set utf8mb4 collate utf8mb4_0900_ai_ci;
反引号在键盘上的位置为:ESC下边,TAB上边,1的左边,要用英文字符 (`)
关键字:database、create、user、from、to、password......
删除数据库:drop database if exists 数据库名;
注:drop删除语句的使用一定要谨慎,删除数据库是一个非常非常危险的操作,在自己的项目或是公司中千万不要这么做,使用之前一定要慎之又慎!!!
查看当前数据库服务的全局默认字符集:show variables like ‘%character%’;
使用MySQL的帮助信息的SQL语句为:\? 或者 ?
END