【MySQL基础】MySQL基础操作(一)

🍉什么是数据库?

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。
我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。
所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
RDBMS 即关系数据库管理系统(Relational Database Management System)的特点:

  1. 数据以表格的形式出现
  2. 每行为各种记录名称
  3. 每列为记录名称所对应的数据域
  4. 许多的行和列组成一张表单
  5. 若干的表单组成database

🍓MySQL数据库

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

  • MySQL 是开源的,目前隶属于 Oracle 旗下产品。
  • MySQL 支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
  • MySQL 使用标准的 SQL 数据语言形式。
  • MySQL 可以运行于多个系统上,并且支持多种语言。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。
  • MySQL 对 PHP 有很好的支持,PHP 是很适合用于 Web 程序开发。
  • MySQL 支持大型数据库,支持 5000 万条记录的数据仓库,32 位系统表文件最大可支持 4GB,64 位系统支持最大的表文件为8TB。
  • MySQL 是可以定制的,采用了 GPL 协议,你可以修改源码来开发自己的 MySQL 系统。

🧀1.数据库操作

🍆1.1展示数据库

SHOW DATABASES;

在这里插入图片描述

  • information_schema数据库是MySQL服务器的数据字典(保存所有数据表和库的结构信息)
  • performance_schema数据库是MySQL服务器的性能字典(保存全局变量等的设置)
  • mysql 主要负责MySQL服务器自己需要使用的控制和管理信息(用户的权限关系等)
  • sys是系统数据库,包括了存储过程,自定义函数等信息
    这四个数据库是MySQL安装时自带的,不要随意删除

🍆1.2创建数据库

CREATE DATABASE [IF NOT EXISTS] database_name
[CHARACTER SET charset_name]
[COLLATE collation_name];

  • []内是可选操作
  • CHARACTER SET: 指定数据库采用的字符集
  • COLLATE: 指定数据库字符集的校验规则
  • 不能创建两个名相同的数据库

当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则是:utf8_ general_ c

在这里插入图片描述

这里我们就创建了一个库名为‘study’的数据库

🍆1.3使用数据库

后续对表的操作都是建立在选中库的前提下进行的

USE 数据库名称;

在这里插入图片描述

🍆1.4删除数据库

DROP DATABASE 库名;
在这里插入图片描述

删除操作是一个危险操作,当数据库内容涉及金钱时,操作要尤其慎重

🧀2.常用数据类型

字符型 VARCHAR(SIZE)
这是一个可变长的字符串

整型 INT

浮点型 DECIMAL(M,D)
M表示小数位数,D表示保留小数点后多少位

日期类型TIMESTAMP
范围从1970到2038年,自动检索当前时区并进行转换。

🧀3.数据表操作

需要操作数据库中的表时,需要先使用该数据库

🍆3.1创建表

CREATE TABLE table_name (
字段1 字段1类型 [字段属性] [COMMENT 字段1注释 ],
字段2 字段2类型 [字段属性] [COMMENT 字段2注释 ],
字段3 字段3类型 [字段属性] [COMMENT 字段3注释 ],
);

在这里插入图片描述
这里我们创建了一个名为student,拥有身份id,姓名name,年龄age,性别sex的表

🍆3.2查看表结构

DESC 数据表名称;

在这里插入图片描述

  • Null表示是否允许为空
  • Key索引类型
  • Default 表示默认值
  • Extra扩充

🍆3.3删除表

危险操作哦

DROP TABLE 数据表名称;

在这里插入图片描述

🧀4.数据操作

🍆4.1新增数据–Create

INSERT INTO table_name (column1, column2, column3, …)
VALUES (value1, value2, value3, …);

  • column表示选择插入列的列名,如果这个表的所有都有内容要插入,则可以省略这个步骤
  • value代表值
  • 这里的值要跟表中的列类型一一对应,如果限定了列,则要与列的类型对应。
    在这里插入图片描述
    我们在这里插入了两条数据,展示一下
    在这里插入图片描述
    这个查询语句在后续会讲到
    我们在这里指定id和name这两列进行插入数据
    在这里插入图片描述

🍆4.2删除数据–Delete

删除操作需谨慎!!!

DELETE FROM table_name [WHERE …] [ORDER BY …] [LIMIT …]

这些语法在后面会在查找数据中讲到

🍆4.3查找数据–Retrieve

SELECT
[DISTINCT] {* | {column [, column] …}
[FROM table_name]
[WHERE …]
[ORDER BY column [ASC | DESC], …]
LIMIT …

我们创建一个新表
方便后续内容做示例
在这里插入图片描述

🫐4.3.1全列查询

SELECT * FROM 数据表名;

在这里插入图片描述

一般不建议进行全列查询,因为当数据过多时,会对服务器造成很大的压力。
🫐4.3.2指定列查询

SELECT 列名,列名 FROM 数据表名;

在这里插入图片描述

注意指定列查询时,不需要按照数据表的顺序来查询

🫐4.3.3查询字段为表达式
这里生成表单都是临时产生的,并不会对原表的内容进行更改

  • 查询可以不包含字段
  • 可以包含一个字段
  • 可以包含多个字段

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

🫐4.3.4别名–AS

SELECT column [AS] alias_name […] FROM table_name;

在这里插入图片描述

4.3.5🫐去重–DISTINCT

在这里插入图片描述
在这里插入图片描述

4.3.6🫐排序–ORDER BY

– ASC 为升序(从小到大)
– DESC 为降序(从大到小)
– 默认为 ASC
SELECT … FROM table_name [WHERE …]
ORDER BY column [ASC|DESC], […];

  • NULL默认为最小,降序时,出现在最下面,升序时出现在最上面
  • 还可以使用表达式或者别名来进行排序

select name,math+english from score order by math+english;
select name,math+english+chinese as totalfrom score order by toeal;

  • 可以以对多个字段进行排序,排序顺序按书写顺序来\

例如此时 就先按照数学成绩来排序,如果数学成绩相同则按照英语成绩来排序
select name,math,chinese,english from score order by math,english,chinese

在这里插入图片描述

在这里插入图片描述
4.3.7🫐条件查询-- WHERE

    1. WHERE条件可以使用表达式,但不能使用别名。
    1. AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分

查询数学成绩大于60分在这里插入图片描述
查询数学成绩大于60并且英语成绩小于70的学生
4.3.8🫐分页查询–LIMIT
offset后面的数字表示从什么位置开始查找
limit 后的数字表示查找几条数据
在这里插入图片描述

🍆4.4更改数据–Update

UPDATE table_name SET column = expr [, column = expr …]
[WHERE …] [ORDER BY …] [LIMIT …]

在这里插入图片描述
以上就是基础部分全部内容,如果对你有帮助的话,点赞关注支持一下吧

  • 50
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 18
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱吃南瓜的北瓜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值