当前位置: 澳门新濠3559 > 数据库 > 正文

库操作、表操作(字段)、数据操作,2.1 什么是

时间:2019-10-07 09:02来源:数据库
SQL的基本操作无非就是增删改查(CRUD),根据对操作的对象分类,又可以分为三类,库操作,表操作与数据操作。 基本操作:CRUD(Create增、Retrieve查、Update改、Delete删) SQL基本操作根

SQL的基本操作无非就是增删改查(CRUD),根据对操作的对象分类,又可以分为三类,库操作,表操作与数据操作。

基本操作:CRUD(Create增、Retrieve查、Update改、Delete删)
SQL基本操作根据操作对象可分为:库操作、表操作(字段)、数据操作

库操作

  • ##### 新增数据库(create database 数据库名称 [库选项];)

库选项用来约束数据库,主要分为两个选项:

  • 1 字符集设定:charset/character set 具体字符集(常用GBK和UTF8)
  • 2 校对集设定:collect 具体校对集
![](https://upload-images.jianshu.io/upload_images/6377387-729ea953be9e24ac.png)

创建数据库



注:数据库名称不能用关键字(系统使用的)和保留字(将来会用到的),如果非要使用关键字和保留字,必须使用反引号。



![](https://upload-images.jianshu.io/upload_images/6377387-f88e5d62b5571053.png)

创建中文数据库


创建数据库的SQL语句执行后,在数据库系统中,增加了对应的数据库信息,会在保存数据库的文件夹下:Data目录下,创建一个对应数据库名字的文件夹。
  • ##### 查看数据库

  • 查看所有数据库(show databases;)

![](https://upload-images.jianshu.io/upload_images/6377387-8959d4cd1eb19b9b.png)

查看数据库
  • 查看指定数据库(show databases like 'pattern')模糊查询
    这里解释一下,pattern是匹配模式,其中%表示匹配多个字符,-表示匹配单个字符
![](https://upload-images.jianshu.io/upload_images/6377387-019da849a19b4bad.png)

查看数据库
  • ##### 更新数据库

数据库的修改仅限库选项:字符集和校对集(校对集以来字符集)
Alter database 数据库名字 [库选项];
Charset/character set [=] 字符集
Collate 校对集

图片 1

修改数据库

  • ##### 删除数据库(删除需谨慎,最好备份,因为删除不可逆,万一删除了重要的东西这可不是闹着玩的哦)

Drop database 数据库名字;

图片 2

删除数据库

1 MySQL学习路线

  • 基础阶段:MySQL数据库的基本操作(增删改查),以及一些高级操作(视图、触发器、函数、存储过程等)。
  • 优化阶段:如何提高数据库的效率,如索引,分表等。
  • 部署阶段:如何搭建真实的环境系统,如服务器集群,负载均衡等。

 

库操作

库操作

对数据库的增删改查

表操作

  • ##### 新增数据表

create table [if not exists] 数据库.表名(
字段名字 数据类型
字段名字 数据类型 ---最后一行不需要逗号
)[表选项]

if not exists:主要是检查功能,也就是如果表名不存在,那么就创建,否则不执行创建代码
表选项:控制表的表现

  • 创建数据库第一种方案:显式的指定表所属的数据库
![](https://upload-images.jianshu.io/upload_images/6377387-cdeaf6656d8192ca.png)

创建数据表
  • 创建数据库的第二种方案:先进入到某个数据库环境,然后这样创建的表自动归属到某个指定的数据库
    进入数据库环境:use 数据库名
![](https://upload-images.jianshu.io/upload_images/6377387-82dced61d9a5b205.png)

进入数据库环境



创建数据表



![](https://upload-images.jianshu.io/upload_images/6377387-2256936ddcd2fa6f.png)

创建数据表



![](https://upload-images.jianshu.io/upload_images/6377387-04dc2bf7cf275d39.png)

对应数据表下的结构文件
  • ##### 查看数据表

1.查看所有表

图片 3

查看所有表

2.查看部分表

图片 4

3.查看表的创建语句

图片 5

4.查看表结构:查看表中的字段信息
describe/desc/show columns from 数据表名

图片 6

  • ##### 修改数据表

1.修改表本身(表名和表选项)
修改表名:rename table 旧表名 to 新表名

图片 7

修改表名

修改表选项(字符集,校对集和存储引擎)
alter table 表名 表选项 值

图片 8

修改表选项

  • ##### 删除数据表(当然,没事什么事还是不要删除,毕竟删除操作不可逆)

drop table 表名1,表名2(可以一次删除多个数据表)

图片 9

删除数据表

2 数据库的基础

新增数据库

CREATE DATABASE [IF NOT EXISTS] db_name [库选项]

其中库选项是用来约束数据库, 分为两个选项

字符集设定:CHARACTER SET 具体字符集(数据存储的编码格式): 常用的字符集有GBK和UTF8。

校对集设定:COLLATE 具体校对集(数据比较的规则)。

-- 创建一个名称为db的数据库,并且设置字符集为utf8
CREATE DATABASE IF NOT EXISTS db CHARACTER SET utf8;

注意这里创建的数据库的名字不能用关键字(已经使用的字符)或者保留字(将来可能使用到的)

图片 10

如果一定想要用关键字或者保留字(不建议使用),那么需要用到反引号(一般在键盘上Esc键的下方,要在英文状态下输出

CREATE DATABASE IF NOT EXISTS `database` CHARACTER SET utf8;

当然,也可以创建中文名称的数据库(不建议使用)

CREATE DATABASE IF NOT EXISTS `数据库` CHARACTER SET utf8;
1.新增数据库

基本语法:Create database 数据库名字 [库选项];
库选项:用来约束数据库,分为两个选项:

  • 字符集设定:charset/character set具体字符集(数据存储的编码格式),常用字符集:GBK和UTF8
  • 校对集设定:collate具体校对集(数据比较的规则)

单行注释:-- 双中划线 空格或者使用#号
在命令行输入:

-- 创建数据库
create database mydatabase charset utf8;

注意:数据库名字不能用关键字或者保留字,如若非要使用,必须使用反引号符号,例:

create database `database` charset utf8;

数据库名是中文也是可以的,但要保证服务器能够识别(建议不用)例:

set names gbk;
create database 中国 charset utf8;

(上述代码第一行是告诉服务器当前中文的字符集是什么)

当创建数据库的SQL语句执行之后,发生了什么?

  • 在数据库系统中,增加了对应的数据库信息
  • 会在保存数据的文件下:Data目录,创建一个对应数据库名字的文件夹。

数据操作

  • ##### 新增数据

1.给全表字段插入数据,不需要指定字段列表(需要注意的是:数据的值出现的顺序必须与表中设计的字段出现的顺序一致:凡是非数值数据,都需要使用引号(建议使用单引号)包裹。

图片 11

插入数据

2.给部分字段插入数据,需要选定字段列表:字段列表出现的顺序与字段顺序无关,单数,值列表的顺序必须与选定的字段的顺序一致。

图片 12

插入数据

  • ##### 查看数据

图片 13

查看数据

  • ##### 更新数据

图片 14

修改数据

  • ##### 删除数据(还是那句话,删除有风险,操作需谨慎)

图片 15

删除数据

2.1 什么是数据库?

  • 数据库:database,存储数据的仓库。
  • 数据库(专业定义):高效的存储和处理数据的介质(介质主要是两种:磁盘和内存)。

 

查看数据库

SHOW DATABASES [LIKE 'pattern']

其中pattern是匹配模式

%:表示匹配多个字符

_:表示匹配一个字符

-- 查看所有数据库
SHOW DATABASES;

-- 查看以information_开头的数据库,需要对中划线_进行转义
SHOW DATABASES LIKE 'information_%';

图片 16

-- 查看以information开头的数据库,相当于information%
SHOW DATABASES LIKE 'information_%';

图片 17

查看数据库的创建语句

SHOW CREATE DATABASE db_name

-- 查看数据库db的创建语句
SHOW CREATE DATABASE db;

图片 18

2.查看数据库
  • 查看所有数据库
show databases;
  • 查看指定部分的数据库:模糊查询
    show databases like 'pattern'; -- pattern是匹配模式
    %:表示匹配多个字符
    _:表示匹配单个字符
    例:要求查询以information_开头的数据库
    错误写法:
show databases like 'information_%';

正确写法:

show databases like 'information_%';

_需要被转义!

  • 查看数据库的创建语句
show create database mydatabase;

数据库在执行SQL语句之前会优化SQL,系统保存的结果是优化后的结果,所以你会发现查到的创建语句不是原来自己写的那样。

补充几点:

  • ##### 中文数据问题

中文数据问题本质上其实就是字符集问题,先插入中文数据试一下:

图片 19

插入中文数据

2.2 数据库的分类?

  • 基于存储介质的不同
    • 关系型数据库(SQL)
    • 非关系型数据库(NoSQL)  

 

更新数据库

ALTER DATABASE db_name [库选项]

-- 修改数据库db的字符集
ALTER DATABASE db CHARACTER SET gbk; 
3.更新数据库

数据库名字不可以修改。
数据库的修改仅限库选项:字符集和校对集(校对集依赖字符集)
基本语法:Alter database 数据库名字 [库选项];
charset/character set [=] 字符集
collate 校对集
例:要求修改informationtest数据库的字符集

alter database informationtest charset GBK;

未完结,后续补充。。。。。。。。。

编辑:数据库 本文来源:库操作、表操作(字段)、数据操作,2.1 什么是

关键词: 澳门新濠3559