【数据库】数据库基础(一)

一、数据库的基本概念

        1、什么是数据库

        数据库(database)是用来阻止、存储和管理数据的仓库

        2、常见的数据库及分类

        MySQL数据库(目前使用最广泛、流行度最高的开源免费数据库;Community + Enterprise)

        Oracle数据库(收费)

        SQL Server数据库(收费)

        Mongodb(Community + Enterprise)

        3、传统型数据库的数据组织结构

        数据组织结构:指的是数据以什么样的结构进行存储。

        在传统数据库中,数据的组织结构分为数据库(database)、数据表(table)、数据行(row)、字段(field)这4大部分组成。

        (1)实际开发中库、表、行、字段的关系

                ① 在实际项目开发中,一般情况下,每个项目都对应独立的数据库。

                ② 不同的数据,要存储到数据库的不同表中,例如:用户数据存储到users表中,图书数据存储到books表中。

                ③ 每个表中具体存储那些信息,由字段来决定,例如:我们可以为users表设计id、username、password这三个字段。

                ④ 表中的行,代表每一条具体的数据。

二、安装并配置MySQL

        1、了解需要安装那些MySQL相关的软件

                MySQL Server:专门用来提供存储和服务的软件。

                MySQL Workbench:可视化的MySQL管理工具。

        2、MySQL在Mac环境下的安装

                ① 先运行mysql-8.0.19-macos10.15-x86_64.dmg这个安装包,将MySQL Server安装到Mac系统。

                ② 再运行mysql-workbench-community-8.0.19-macos-x86_64.dmg这个安装包。将可视化的MySQL Workbench工具安装到Mac系统。

        3、MySQL在windows环境下的安装

        在Windows环境下安装MySQL,只需要运行mysql-installer-community-8.0.19.0msi这个安装包,就能一次性将MySQL Server 和MySQL Workbench安装到自己的电脑上。

        4、DataType数据类型        

        ① int        整数

        ② varchar(len)        字符串

        ③ tinyint(1)        布尔值

        5、字段特殊表示

        ① PK(Primary Key)主键、唯一标识

        ② NN(Not Null)值不允许为空

        ③ UQ(Unique)值唯一

        ④ AI(Auto Increment)值自动增长

        6、使用SQL管理数据库

        (1)什么是SQL

        SQL是结构化查询语言,专门用来访问和处理数据库的编程语言,能够让我们以编程的形式,操作数据库里面的数据。

        三个关键点:

        ① SQL是一门数据库编程语言

        ② 使用SQL语言编写出来的代码,叫做SQL语句

        ③ SQL语言智能在关系型数据库中使用

        (2)SQL能够做什么

        ① 从数据库中查询数据

        ② 向数据库中插入新的数据

        ③ 更新数据库中的数据

        ④ 从数据库删除数据

        ⑤ 可以创建新数据库

        ⑥ 可在数据库中创建新表

        ⑦ 可在数据库中创建存储过程、视图

三、MySQL的基本使用

        1、SQL的SELECT语句

        (1)语法

        SELECT语句用于从表中查询数据。执行的结果被存储在一个结果表中。

        SELECT * FROM 表名称

        SELECT 列名称 FROM 表名称

注意:SQL语句中的关键字对大小写不敏感。SELECT等效于select,FROM等效于from。

        2、SQL的INSERT INTO语句

        (1)语法

        INSERT INTO语句用于向表中插入新的数据行,语法格式如下:

        INSERT INTO table_name(列1,列2,...)VALUES(值1,值2,...)

        (2)INSERT INTO示例

        向user表中,插入一条username为tony stark,password为098123的用户数据,示例如下:

        INSERT INTO users (username,password) values ('tony stark','098123')

        3、SQL的UPDATE语句

        (1)语法

        Update语句用于修改表中的数据。其语法格式如下:

        UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

        (2)示例

        把user表中id为2的用户密码,更新为888888.示例如下:

        UPDATE users SET password='888888' WHERE id=2

        多个列 用,隔开。

        4、SQL的DELETE语句

        DELETE语句用于删除表中的行,语法格式如下:

        DELETE FROM 表名称 WHERE 列名称 = 值

        5、SQL的WHERE子句

        (1)语法

        WHERE子句用于限定选择的标准。在SELECT、UPADTE、DELETE语句中。皆可使用WHERE子句来限定选择的标准。

        --查询语句中的WHERE条件

        SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

        --更新语句中的WHERE条件

        UPDATE 表名称 SET 列=新值 WHERE 列 运算符 值

        --删除语句中的 WHERE 条件

        DELETE FROM 表名称 WHERE 列 运算符 值

        (2)可在WHERE子句中使用的运算符

操作符描述
=        等于
<>不等于
>大于
<小于
>=大于等于
<=小于等于
BETWEEN在某个范围内
LTKE搜索某种模式

注意:在某些版本的SQL中,操作符<>可以写为!=

        (3)WHERE子句示例

-- 查询 status 为 1 的所有用户

SELECT * FROM users WHERE status=1

-- 查询 id 大于 2 的所有用户

SELECT * FROM users WHERE id>2

-- 查询 username 不等于 admin的所有用户

SELECT * FROM users WHERE username <> 'admin'

        6、SQL的AND和OR运算符

        (1)语法

        AND和OR可在WHERE子句中把两个或多个条件结合起来。

        AND表示必须同时满足多个条件,相当于JavaScript中的&&运算符,例如if(a!==10&&a!==20)

        OR表示只要满足任意一个条件即可,相当于JavaScript中的||运算符,例如if(a!==10||a!20)

        7、SQL的ORDER BY子句

        (1)语法

        ORDER BY 语句用于根据指定的列对结果集进行排序。

        ORDER BY 语句默认按照升序对记录进行排序。

        如果您希望按照降序对记录进行排序,可以使用DESC关键字。

        (2)ORDER BY 子句排序

        对users表中的数据,按照status字段进行升序排序,示例如下:

        SELECT * FROM users ORDER BY status

        // 其中,ASC关键字代表升序排序

        SELECT * FROM users ORDER BY status ASC

        //其中,DESC关键字代表升序排序

        SELECT * FROM users ORDER BY status DESC

        (3)ORDER BY 子句 多重排序

        对users表中的数据,先按照status字段进行降序排列,再按照username的字母排序,进行升序排序,示例如下:

        SELECT * FROM users ORDER BY status DESC,username ASC

        8、SQL的COUNT(*)函数

        (1)语法

        COUNT(*)函数用于返回查询结果的总数据条数,其语法格式如下:

        SELECT COUNT(*) FROM 表名称

        (2)示例

        查询users表中status为0的总数据条数:

        SELECT COUNT(*) FROM users WHERE status=0

        (3)使用AS为列设置别名

        如果希望给查询出来的列名称设置别名,可以使用AS关键字,示例如下:

        SELECT COUNT(*) AS total FROM users WHERE status=0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值