优化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编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 ...
随机推荐
- IOS ID生成器
// // IdGenerator.m // Copyright (c) 2014年 青岛拓宇网络科技有限公司. All rights reserved. // #import "IdGen ...
- C语言学习005:不能修改的字符串
一段有问题的代码,你能看出来么? int main(){ char* msg="ABC"; msg[]=msg[]; puts(msg); ; } 编译这段代码并不会有什么问题,一 ...
- C#三种判断字符是否为汉字的方法
判断一个字符是不是汉字通常有三种方法,第一种用 ASCII 码判断,第二种用汉字的 UNICODE 编码范围判 断,第三种用正则表达式判断,以下是具体方法. 1.用ASCII码判断 在 ASCII码表 ...
- lua的string.gsub初使用
今天在学习lua,熟悉项目代码的过程中,发现string.gsub好高级,所以在此mark下. 以下是lua5.1的官方文档介绍. string.gsub (s, pattern, repl [, n ...
- 【vbs】vbs写ini文件
这两天在折腾给一个项目打安装包,第一次接触软件打包,用的Advanced Installer(以下简称AI),应该说如果安装过程没有特殊动作(常规动作指释放文件.写注册表.建快捷方式等)的话,倒挺傻瓜 ...
- sQLserver T-SQL 事务的用法
原文在: https://www.lesg.cn/netdaima/2016-55.html 在使用Mssql的时候经常需要用到存储过程 有些操作在前面发生错误的时候:需要回滚:这就需要事务了: 下面 ...
- iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】
在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...
- Oracle中添加新用户并赋予权限
--创建一个新用户NewUser 并设置密码为1 create user NewUser identified by 1; --为该用户赋予权限 grant connect , Resource to ...
- Yii2初谈
Yii2发布有两个月时间了,一直没有去仔细关注过. 今天在回顾PSR标准时,稍稍扫了一眼Yii2.它的命名风格还是一如既往的与Zend那种既首字母大写又还要下划线连接的很二的命名风格格格不入.其实我看 ...
- Spark集群 + Akka + Kafka + Scala 开发(3) : 开发一个Akka + Spark的应用
前言 在Spark集群 + Akka + Kafka + Scala 开发(1) : 配置开发环境中,我们已经部署好了一个Spark的开发环境. 在Spark集群 + Akka + Kafka + S ...