优化MySchool数据库(一)
《优化MyShcool数据库》:能够的独立的分析|设计|创建|运营|你的独立的数据库系统
设计--->实现--->TSQL--->查询优化---->性能优化技术----> 业务逻辑的固化
知识点回顾:
所谓数据“完整性”---- 表单中的数据:不丢失、不混乱
如何维护数据的“完整性”----- 在数据访问操作时,对操作行为进行复杂的限制和约束。
“完整性约束”包括:实体完整性约束、域完整性约束、引用完整性约束、自定义约束
数据库操作语法:(SQL分类:数据库定义、数据操作、数据控制)
增:insert into 表(列1,列2...) values (值1, 值2.....)
删:delete from 表 where 条件
改:update from 表 set 列1=值1,列2=值2 .... where 条件
查:select 列1,列2.... from 表 where 条件
所谓的“聚合函数”的使用:
---- 查询后,不再关心具体的个体及细节,而是关心谁最大Max?谁最小Min?有多少人count?加起来是多少呀Sum?平均值Avg?
---- 使用聚合函数时,往往会结合“数据分组”
= 6 order by WKI" src="file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image001.jpg" width="576" height="153">
所谓表连接:
1、您需要的数据,再一个表单找不全,需要到多个表中去查找
2、虽然需要的数据在一张表,但条件在其他表
表连接形式:(内连接)inner join
(左连接)Left join
(右连接)Right join
为什么需要先设计,再创建数据库?
----- 数据量大、数据与数据之间的关系复杂了
设计要达到的目的?
----- 存储效率高、存取效率高、数据完整性
数据库设计实现的步骤:
------- 需求调研 ---> 概要设计 ----> 详细设计 --->代码实现 ---> 调试安装
数据库的需求调研,应该调研什么,确定什么?
1、什么东西需要我保存
2、确定保存物体的细节
3、确定物品信息之间,是否具有关联
-------- 需求调研获取的信息,就是“概要设计”的关键内容
数据库的概要设计后,使用“E-R图”(实体关系图),保存设计结果。
1、这些东西,我们称为“实体” ------ 矩形
2、这些东西的细节,我们称为“它的属性” ----- 椭圆
3、这些东西之间的关联,我们称为“关系” ----- 菱形
数据库设计好了,我们会用“三大范式”来审核设计是否符合要求:
第一范式:看你的“列”设计是否符合要求
第二范式:看你的“表”设计是否符合要求
第三范式:看你的“表”是否需要拆分
范式描述:
第一范式:原子性,每列都是不可再分的最小数据单元
第二范式:每张表描述一件事(一个事务)
第三范式:表单中没有冗余数据(同一个数据出现两次以上)
情况一:在表单中没有规律联动的冗余数据
情况二:表单没有隐藏其他实体信息
优化MySchool数据库(一)的更多相关文章
- 优化MySchool数据库设计之【巅峰对决】
优化MySchool数据库设计 之独孤九剑 船舶停靠在港湾是很安全的,但这不是造船的目的 By:北大青鸟五道口原玉明老师 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识 ...
- 优化MySchool数据库(二)
优化School数据库(TSQL建库建表建约束) 使用T_sql代码建库.建表.建约束: 建库: Create database HotelManagerSystem on ( ---- 数据文件-- ...
- 优化MySchool数据库设计总结
数据库的设计 一:什么是数据库设计? 数据库设计就是将数据库中的数据实体以及这些数据实体之间的关系,进行规范和结构化的过程. 二:为什么要实施数据库设计? 1:良好的数据库设计可以有效的解决数据冗 ...
- 优化MySchool数据库设计
第一章 数据库的设计 1.E-R图中: 矩形:实体 椭圆:属性 菱形:关系 直线:连接实体,属性和关系 2.映射基数 一对多 多对一 多对多 3.范式: 第一范式:确保每列的原子性 第二范式:确保表中 ...
- 优化MySchool数据库(存储过程)
什么是“存储过程”: ---- 数据库中,用于存储“业务逻辑”的技术!(T-SQL代码当做数据一样保存到数据可) 语法 : [if exists(select * from sysobjects wh ...
- 优化MySchool数据库(事务、视图、索引)
事务.视图.索引: 事务:当生活逻辑中的“一个步骤”,需要使用多条SQL去完成时,必须使用事务来确保其“完整性“. 视图:简化数据库结构,方便你编写SQL语句(简化SQL语句的编写) 索引:提高“数据 ...
- 优化MySchool数据库(四)
关于“无法附件数据库”过程的遇到的问题: 1.数据文件本身,具有访问权限的限制 ---- 选中 数据库文件所在的文件夹---->右键菜单(属性)----> 安全 --->User用户 ...
- 优化MySchool数据库(三)
使用T_SQL 编写业务逻辑: 如何定义及使用“变量”: ---- 让电脑帮我记住一个名字(王二) C#: string name ; [定义一个变量] name = "王二&qu ...
- accp7.0优化MySchool数据库设计内测笔试题总结
1) 在SQL Server 中,为数据库表建立索引能够(C ). 索引:是SQL SERVER编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 ...
随机推荐
- Java线程并发中常见的锁
随着互联网的蓬勃发展,越来越多的互联网企业面临着用户量膨胀而带来的并发安全问题.本文着重介绍了在java并发中常见的几种锁机制. 1.偏向锁 偏向锁是JDK1.6提出来的一种锁优化的机制.其核心的思想 ...
- Javascript动画效果(三)
Javascript动画效果(三) 前面我们已经介绍了速度动画.透明度动画.多物体运动和任意值变化,并且我们在Javascript动画效果(二)中介绍到我们封装了一个简单的插件雏形,接下来我们对前面的 ...
- [AngularJS] AngularJS系列(2) 中级篇之路由
目录 原理 angular-route ui-router 事件 深度路由 原理 ng的route本质是监听hashchange事件. 在angular-route中 $rootScope.$on(' ...
- 需要正确安装 Microsoft.Windows.ShellExperienceHost 和 "Microsoft.Windows.Cortana" 应用程序。
windows 10 开始菜单修复工具 Win10开始菜单修复工具出现的原因,自从升级到Windows 10,一直BUG不断,而其中有一个BUG非常的让你印象深刻,就是开始菜单无响应,你用着用着电脑 ...
- 【原创】Kakfa log包源代码分析(一)
Kafka日志包是提供的是日志管理系统.主要的类是LogManager——该类负责处理所有的日志,并根据topic/partition分发日志.它还负责flush策略以及日志保存策略.Kafka日志本 ...
- Java继承知识总结
Java中的继承作为Java面向对象三大特性之一,在知识点上而言,还是很多的.现做出如下总结: 1. 继承的概念: 继承在本职上是特殊——一般的关系,即常说的is-a关系.子类继承父类,表明子类是一种 ...
- C#删除程序自身【总结】
偶然看到一个可以自删除的程序,于是了解下如何实现.然后整理如下: 思路: 在.NET程序中,因为运行中的程序是受系统保护的,不能自己删除自身的,所以自删除的思路: 在关闭本程序之前启动新的进程打开另 ...
- 孙鑫MFC学习笔记11:保存图像
1.CPtrArray指针数组 2.CPtrArray返回void指针,需要做类型转换 3.View类中的OnPaint调用OnPrepareDC和OnDraw,如果覆盖OnPaint,就不会调用On ...
- 让我们来讲讲,SCRUM和AGILE(资料来源:https://www.youtube.com/ 文中有代理参数配置)
本期我们讨论的主题是项目管理 以前,一直以为“ Write the code, Change the world ”.但实质上,我们就一写代码的.如果我们能上升到项目管理的角度来实行Project M ...
- 深入浅出Java多线程
Java给多线程编程提供了内置的支持.一个多线程程序包含两个或多个能并发运行的部分.程序的每一部分都称作一个线程,并且每个线程定义了一个独立的执行路径. 多线程是多任务的一种特别的形式,但多线程使用了 ...