MySQL 数据库操作

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL 数据库操作

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、关系模型

关系数据库是建立在关系模型上的。而关系模型本质上就是若干个存储数据的二维,可以把它们看作很多Excel表。

42a9670621994156ada236b81dae96c8.png

表的每一行称为记录(Record),记录是一个逻辑意义上的数据。

表的每一列称为字段(Column),同一个表的每一行记录都拥有相同的若干字段。

字段定义了数据类型(整型、浮点型、字符串、日期等),以及是否允许为NULL。注意NULL表示字段数据不存在。一个整型字段如果为NULL不表示它的值为0,同样的,一个字符串型字段为NULL也不表示它的值为空串''。

       通常情况下,字段应该避免允许为NULL。不允许为NULL可以简化查询条件,加快查询速度,也利于应用程序读取数据后无需判断是否为NULL。和Excel表有所不同的是,关系数据库的表和表之间需要建立“一对多”,“多对一”和“一对一”的关系,这样才能够按照应用程序的逻辑来组织和存储数

ID

名称

班主任

101

六年级一班

李老师

102

六年级二班

王老师


<11关系>

每一行对应着一个班级,而一个班级对应着多个学生,所以班级表和学生表的关系就是“一对多”:


ID

姓名

班级ID

性别

年龄

1

小花

101

M

9

2

小红

102

F

8

3

小军

102

M

8

4

小白

101

F

9


<1对多关系>


反过来,如果我们先在学生表中定位了一行记录,例如ID=1的小花,要确定他的班级,只需要根据他的“班级ID”对应的值101找到班级表中ID=101的记录,即六年级一班。所以,学生表和班级表是“多对一”的关系。


如果我们把班级表分拆得细一点,例如,单独创建一个教师表:


ID

名称

年龄

1

马老师

26

2

张老师

39

3

潘老师

32

4

赵老师

27


班级表只存储教师ID:

ID

名称

班主任ID

101

六年级一班

1

102

六年级二班

3


这样,一个班级总是对应一个教师,班级表和教师表就是“一对一”关系。

二、数据库的操作


像文件一样,我们可以随时对数据库执行如下操作:

  • 创建数据库
  • 查看数据库
  • 选择数据库
  • 删除数据库

创建数据库


创建数据库是指在数据库系统中划分一块空间,用来存储相应的数据,这是进行表操作的基础,也是进行数据库管理的基础。代码如下(示例):


(1)在MySQL中,创建数据库之前,可以使用SHOW语句来显示当前已经存在的数据库,具体SQL语句如下:


   SHOW DATABASES;  


(2)创建数据库的SQL语句如下:


CREATE DATABASE database_name;


(其中参数database_name表示所要创建的数据库的名称)


查看数据库

查看数据库在上面已提及,SQL语句如下:

     SHOW DATABASES;  


选择数据库


 在数据库管理系统中一般会存在许多数据库。在操作数据库对象之前,需要先选择一个数据库。


       在MySQL中选择数据库可以通过SQL语句USE来实现,其语法形式如下:


USE database_name;  


注:在上述语句中,database_name参数表示所要选择的数据库名字。


       在选择具体的数据库之前,首先要查看数据库管理系统中已经存在的数据库,然后才能从这些已经存在的数据库中进行选择。如果选择一个不存在的数据库,就会出现错误。


删除数据库


在删除数据库之前,首先需要确定所操作的数据库对象已经存在。在MySQL中删除数据库可以通过SQL语句DROP DATABASE来实现,其语法形式如下:


DROP DATABASE database_name


注:在上述语句中,database_name参数表示所要删除的数据库名字。


切记: 删除数据库时mysql 不会确认,千万要小心!!!


三、MySQL 数据库命名规范

      可以采用26个英文字母 (不区分大小写) 0-9的自然数 (一般不需要) 加上下划线 ‘_’ 组成,命名简介明确 (School),多个单词用下划线 ‘_’ 分隔,一个项目一个数据库,多个项目慎用同一个数据库!!!


总结

查看创建好的数据库命令:

SHOW DATABASES;


创建数据库命令:

CREATE DATABASE database_name;

选择数据库命令:

USE database_name;

删除数据库命令:

DROP DATABASE database_name;

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
21天前
|
SQL 关系型数据库 MySQL
|
21天前
|
存储 关系型数据库 MySQL
MySQL技能完整学习列表5、数据库操作——1、创建数据库和表——2、修改表结构(ALTER TABLE)
MySQL技能完整学习列表5、数据库操作——1、创建数据库和表——2、修改表结构(ALTER TABLE)
194 0
|
9月前
|
关系型数据库 MySQL 数据库
对于mysql数据库delect from,truncate table,drop table, update操作的时候如何选择
对于mysql数据库delect from,truncate table,drop table, update操作的时候如何选择
75 2
|
21天前
|
存储 关系型数据库 MySQL
MySQL基础入门:数据库操作全攻略
MySQL基础入门:数据库操作全攻略
66 0
|
12天前
|
SQL 安全 关系型数据库
MySQL数据库操作-2
MySQL数据库操作
7 0
|
12天前
|
SQL 存储 关系型数据库
MySQL数据库操作-1
MySQL数据库操作
22 0
|
21天前
|
SQL 关系型数据库 MySQL
Python中的数据库操作:SQLite与MySQL的连接
Python中的数据库操作:SQLite与MySQL的连接
144 0
|
9月前
|
关系型数据库 MySQL BI
MySQL数据库操作篇3(聚合函数&分组查询)
MySQL数据库操作篇3(聚合函数&分组查询)
103 0
|
21天前
|
存储 关系型数据库 MySQL
MySQL技能完整学习列表5、数据库操作——3、索引(Indexing)——4、约束(Constraints)
MySQL技能完整学习列表5、数据库操作——3、索引(Indexing)——4、约束(Constraints)
43 0
|
10月前
|
SQL 关系型数据库 MySQL