数据库基础(一)SQL浅知

发布时间:2024年01月18日

数据库系列文章目录

数据库基础(一)SQL浅知
数据库基础(二)数据查询



前言

数据库作为计算机专业学生绕不过去的一关,对于后期的项目开发过程意义重大,熟悉基本的数据库操作更是学习和工作的基础。本系列文章会尽可能的展示大学生所需要掌握的内容。


一、了解SQL

1.1 数据库(database)

1.1.1 数据库

数据库定义: 保存有组织的数据的容器(可以是一个或一堆文件)

易混淆点
数据库(DataBase, 简写为DB):数据库的概念其实还是比较抽象的,但我们可以把它理解为存储数据的一种集合,一种以某种方式进行存储数据的集合。单纯来讲,数据库究竟是一份文件还是别的什么并不重要。
数据库管理系统(DataBase Management System,DBMS):上面我之所以说了数据库究竟是什么并不重要,原因就在于我们通常根据数据库管理系统进行数据库的访问,而不是自己打开一个数据库,进行事务处理。

要注意数据和数据库管理系统的差别,这是两个完全不同的东西。

1.1.2 表(table)

表定义:某种特殊类型数据的结构化清单
表在数据库领域中,是比较重要的概念。
那么什么是表呢?结合我们的实际情况,假设你现在新建了一个excel文档,并且现在我们规定每个excel文件中只能有一页sheet,当我们现在要统计全班同学的基本信息,比如学号、姓名、身份证号、家庭住址、联系方式时,常见的操作就是把第一行作为表头,如何每一列都记录不同人的相同数据,每一行都记录一个人的完整信息。比如这样:

学号姓名身份证号家庭住址联系方式
2020xxxx孙行者33xxxxxxxxxxxxxxxx花果山1xxxxxxxxxx
2020xxxx者行孙33xxxxxxxxxxxxxxxx花果山1xxxxxxxxxx
2020xxxx行者孙33xxxxxxxxxxxxxxxx花果山1xxxxxxxxxx

这个excel就可以视为是一张表。假定学号、身份证号使用整数类型进行存储,其余使用字符串类型存储,那么第一列和第三列就都是整型,其余为字符串型,虽然每行的数据都不相同,但数据类型是一样的,整个表就有了意义。

1.1.3 列(column)

列定义:表中的一个字段,所有的表都是由一个或多个列组成的
与上面的excel理解过程相似,但需要注意的是,每一列都需要定义这一列的数据类型,MySQL数据库中常用的数据类型有整型、浮点型、文本型、布尔型、日期型等。
每一列的类型都是一致的,但不同列之间的类型可以不同。

1.1.4 行(row)

行定义:表中的一个记录

与前文提到的例子相似,每个人都有很多信息,但每个人的信息都只能填在一行里,行数代表着人数。

1.1.5 主键(Primary Key)

主键定义:能够唯一区分表中每一行的一列(或一组列)
比如回到上面的这张表:

学号姓名身份证号家庭住址联系方式
2020xxxx孙行者33xxxxxxxxxxxxxxxx花果山1xxxxxxxxxx
2020xxxx者行孙33xxxxxxxxxxxxxxxx花果山1xxxxxxxxxx
2020xxxx行者孙33xxxxxxxxxxxxxxxx花果山1xxxxxxxxxx

在我们的实际生活中,我们每个人的身份证号是实际唯一的,并且不会有重复的身份证号,那么这个身份证号就可以被视为我们的信息表中的主键,通过身份证号我们能够确定一个人的姓名、出生日期、户籍所在地、性别等各类信息
结合上面的表,在学校里,我们每个人的学号都是唯一且不会重复的,所以学号也可以作为我们在学校时学生信息表的主键,通过学号我们可以确定学生的姓名、班级、专业等各类信息。

主键的重要性

  • 可以唯一标识某一行
  • 使更新和删除操作更加安全,因为缺少主键很容易造成执行数据库操作时影响到不相干行。

设为主键的条件

  1. 任意两行都不具有相同的主键值
  2. 每个行都必须有一个主键值(主键值不能为空)

当然,对于一些数据量比较大或者比较特殊的情况,我们可能很难通过一列来确定主键,此时我们可以通过同时设置几列作为主键,相同列不同行的值可以相同,但几列的主键值组合必须唯一

建议:

  • 不要更新主键列中的值
  • 不要重用主键列的值
  • 不要使用列值会变化的列作为主键本身

1.2 SQL

SQL,结构化查询语句(Structured Query Language)的缩写,是一种专门用来与数据库通信的语言。
如果你学过一些编程语言,比如C、Java、Python等,你会发现SQL语言与其它语言相比简单很多,只需要记住一些词就行。SQL有很多优点:

  1. SQL能够支持几乎所有的数据库管理系统(不同数据库之间可能存在差别)
  2. 很容易上手

二、MySQL概览

2.1 MySQL

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

RDBMS的特点:

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

2.2 MySQL安装

略,但具体安装教程可以参考:
mysql8.0.25安装配置教程(windows 64位)最详细

2.3 数据库可视化软件

如果你没有安装任何可视化软件,那么你的操作界面应该是这样的:

控制台
这就是最原始的控制台界面。所以为了方便操作,我们往往会使用一些可视化软件,比较常用的有DBeaver、DataGrip、Navicat等,如果需要后两者的激活版,可以点击下方的公众号二维码关注后后台发送“数据库”即可获得相关下载链接。
当然,MySQL安装优势可能会出现各种各样的问题,所以如果实在安装不了的话,可以安装mariadb代替,两者基本没有差别,关注公众号后回复“mariadb”即可获取安装程序。

文章来源:https://blog.csdn.net/qq_53311714/article/details/135663072
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。