数据库使用的介绍
什么是SQL
- 学习数据库的使用——>基于
SQL编程语言
来对数据库进行操作
- 重点表述的是“需求”,期望得到什么结果。(至于结果是如何得到的,并不关键,都是数据库服务器在背后做好了)
- 重点表述的是“逻辑”,“做一件事,要怎么做”
- 此处学习的
SQL
就是通过mysql
的命令行客户端来进行输入(图形化客户端也是同理)
主流的数据库都是支持SQL编程语言
虽然不同数据库支持的SQL语法
有细微差距,但整体思路是一样的
MySQL 客户端闪退的原因
- 密码不正确
- 数据库服务器没有正确启动
- 在此处输入的“命令”就是
SQL 语句
这些输入的内容都会通过
mysql客户端
,发送给mysql服务器
,由服务器程序负责执行
- 之前谈到的数据库,指的是像
mysql
,oracle
这样的“软件” - 此处谈到的数据库,指的是数据库软件上,组织数据的“数据集合”
- 硬盘上存储的数据,先划分成多个“数据库”(逻辑上的数据集合,可以将一些有关联的数据表,放在同一个“数据库”中)不过这些不同逻辑上的数据集合,物理上是存储在同一个服务器硬盘上的
- 每个数据库里面又包含很多的“表”
- 每个表中又包含若干行
- 每个行里面又有若干列
“数据库”的含义
- 一类软件
- 组织数据的“数据集合”
对库的基本操作
1.查看当前有哪些数据库
- 语法为:
show databases;
2. 创建数据库
- 语句为:
create database 数据库名;
秒(s)—>毫秒(ms)—>微秒(us)—>纳秒(ns)—>皮秒(ps)
- 创建数据库的时候,还需要指定数据库的“字符集”(charset)
- 语句为:
create database 数据库名 charset 字符集;
中文编码方案
GBK
,主要是在中国大陆使用,只表示简体字,此时一个汉字是 2 个字节UTF-8
,属于变长编码,表示不同的符号,可以用 1-4 个字节来表示,对于中文汉字来说,一般是 3 个字节表示
UTF8
是当前世界上最流行的编码方式,不仅仅能表示中文,也能表示任何一种文字
if not exists
——>若不存在,则…- 为后续批量执行提供便利
collate
——>字符约束,面试字符串之间的比较规则
后续会涉及字符串比较大小等…
3.选中数据库
- 数据库组织数据的规则:
- 一个数据库服务器上有很多“数据库” ——>类似“文件夹”的感觉
- 一个数据库上有很多“数据表”
- 一个数据表上有很多“数据行”
- 一个数据行上有很多“数据列”
- 语法为:
use 数据库名;
4.删除数据库
- 语法为:
drop database 数据库名;
- 一旦删除,就恢复不了了
怎么避免误删库
- 控制权限
- 只有少数人能操作,普通开发只能“读操作”,不能“修改”甚至“删库”。
DBA
- 数据库管理员,专业玩数据库的
- 一般中大厂才有,小公司较少
- 非常吃经验,越老越吃香
- 及时备份数据库的数据
- 将数据拷贝出来,存储在别的地方
一二三原则
- 一份数据
- 至少存在两个机器上
- 至少有三个副本(拷贝出三份)
- 确实要进行“删库”危险操作,最好拉上一个人一起操作,看着你操作
人脑有时候会出 bug
数据库的表操作
- 先用 use 选中数据库
- 语法为:
use 数据库名;
查看当前数据库中有哪些表
- 语法为:
show tables;
创建表:
- 语法为:
create table 表名(列名 类型,列名 类型...);
#
和--
是注释前缀
查看表结构的详细情况
- 主要是列的相关信息,,语法为:
desc 表名;