MySQL必备知识

标签: MySQL  mysql  数据库

设计数据库

在这里插入图片描述
做一个数据库之前,一定要先规划好要做什么,如何做,以及需要存储哪些数据,这些数据之间的关系是什么,需要满足哪些用户要求,都到先考虑好.这就是数据库设计的前提。SQL语句不区分大小写
数据库的名字后缀加上 _db
表格名称的前面加上 _tb

数据库设计

数据库的设计就是将数据规范化,过程化

  1. 需求设计
  2. 概念结构设计
  3. 逻辑结构设计
  4. 物理结构设计
  5. 数据库的实施
  6. 数据库的维护

需求设计

需求设计(需求分析)
主要是根据用户的要求,分析其功能的可行性与实现方法。采用从上到下从简单到复杂从整体到部分的方式进行分析,把整个系统分为几个模块,又把这几个模块又分为多个功能。

概念结构设计

从需求分析中找到实体和联系

1,实体
所谓实体就是表示需求设计分析出来的实际存在的事物,每一类实体都有它们自己的属性来描述。
如:学生、教师、课程等都可以称为教务管理系统中的实体。
2,联系类型
1:1,一对一的关系
A表中的一行最多只能对应B中的一行,反之亦然。
1:n,一对多的关系
A表中的一行能对应B表中的多行,但B表中的一行只能对应A表中的一行。
n:m,多对多的关系
A表中的一行匹配B表中的多行,反之亦然。

表的建立

数据有多种多样,如何进行需求的分析和使用
列:教务管理系统
有这些数据 学号,姓名,性别,年龄,老师,老师号,职称,手机号,成绩…
我们可以将这些数据分成多个表格使用
1.学生表: 2. 课程表: 3. 成绩表: 4. 班级表:

逻辑结构设计

将模型转换成特定支持的数据模型
对于关系型数据库来说,就是把实体联系转换成二维数据表格
第一范式
1NF 原子过滤性,过滤重复属性
关系模式中的每一个分量都应该是不可再分的数据项,也就是说实体的每一个属性不能存在子属性
第二范式
2NF 非主属性依赖于主属性
第三范式
2NF 基础上,所有非主属性不能依赖其他非主属性
范式就是设计数据库的规则和标准,我们设计的时候遵照这个规则和规范
将我们设计数据库的方法标准化,遵循范式的好处可以很好的处理比较复杂和大型的数据,方便多人维护和管理,所有人遵循同一个范式,方便多人沟通和维护.

物理结构设计

将逻辑结构实施到具体环境中,其依赖于给定的DBMS和硬件系统。

数据库的实施

根据逻辑设计和物理设计的结果,建立数据库系统,加载数据,测试,试运行。

数据库的运行和维护

在数据库正式投入使用之后,需要改善数据库性能,维护数据库的安全和完整性。

关系数据结构的特点

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

数据库的常用术语

数据库: 数据库存储数据表的集合。(database)
数据表: 存储数据内容,类似于电子表(table)
列: 数据元素 包含了相同类型的数据。(column)
行:或记录一组相关的数据。(row)
主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。(primary key)
外键:外键用于关联两个表。(foreign key)
复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。
索引:使用索引可快速访问数据库表中的特定信息。类似于书籍的目录。
查询: 使用特定的条件来查找特定的数据

常用命令

MySQL命令可以在MySQL命令界面上,或者用MySQL执行代码的工具上运行
1,显示数据库

show databases;

2,切换数据库

use 要切换的数据库;
#切换到mysql 这个数据库 
use mysql;

3,显示数据库中的所有表格

show tables

4,显示数据表结构

show columns from 表格; 
desc 表格;

5,创建数据库

create database 数据库名;

6,创建表

create table if not exists 表格名称( 
      属性名1 属性类型 [约束...],
        ...... 
      属性名n 属性类型 [约束...], 
); 

7,插入数据

##加上values 可以连续插入数据 
insert into 表名 value(属性值1,属性值2,,属性值n);

8,删除表

 drop table 数据表名;

9,退出

##有三种格式,注意分号
quit; 
exit; 
\q;

10,修改MySQL密码

#修改密码 
update mysql.user set authentication_string=PASSWORD('123456'); 
#刷新权限 
flush privileges;
版权声明:本文为qq_45893999原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_45893999/article/details/106893789