优化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编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 ...
随机推荐
- 百度Map与HT for Web结合的GIS网络拓扑应用
在<HT for Web整合OpenLayers实现GIS地图应用>篇中介绍了HT for Web与OpenLayers的整合,不少朋友反应国内用得比较多的还是百度地图,虽然HT整合百度地 ...
- 你必须知道的ASP.NET-----IHttpAsyncHandler实质
一.写在前面 一说到IHttpAsyncHandler,很多人会顾名思义地说'不就是异步IHttpHandler'吗? 但当我发出疑问:"你真知道他们的不同之处?你真会使用它吗?" ...
- ES6笔记(3)-- 解构赋值
系列文章 -- ES6笔记系列 解构赋值,即对某种结构进行解析,然后将解析出来的值赋值给相关的变量,常见的有数组.对象.字符串的解构赋值等 一.数组的解构赋值 function ids() { ret ...
- 利用jstree插件轻松构建树应用
最近完成了项目中的一个树状应用,第一次接触了jstree这个插件,总的来说它的官方文档还是比较详细的,但是在使用过程中还是出现了一些问题,下面我就来谈谈这款插件的使用和心得. 首先项目需要构建一棵树, ...
- sticky组件的改进实现
上上篇博客介绍了一个sticky组件的简洁实现,经过这两天的思考,发现上次提供的实现还有较多不足的地方,另外跟别的网站上实现的效果在取消固定的时候也有一些不同,上次提供的取消固定的处理方式不好,本文在 ...
- Python语言特性之1:函数参数传递
问题:在Python文档中好像没有明确指出一个函数参数传递的是值传递还是引用传递.如下面的代码中"原始值"是不放生变化的: class PassByReference: def _ ...
- 【原创】Kakfa utils源代码分析(一)
Kafka.utils,顾名思义,就是一个工具套件包,里面的类封装了很多常见的功能实现——说到这里,笔者有一个感触:当初为了阅读Kafka源代码而学习了Scala语言,本以为Kafka的实现会用到很多 ...
- 使用ExpandoObject来实现多个Model传送至视图
昨天Insus.NET有实现<使用ViewModel来实现多个Model传送至视图>http://www.cnblogs.com/insus/p/5594134.html 那今天Insus ...
- 两个dropDownList和一个GridView的选择与显示
很久没有写ASP.NET了,今天有看到论坛上一个问题:"两个dropDownList和一个GridView,已经进行了数据绑定,现在想让第一个下拉菜单的数据改变时,第二个下拉菜单自动变到相应 ...
- C#操作XML学习之创建XML文件的同时新建根节点和子节点(多级子节点)
最近工作中遇到一个问题,要求创建一个XML文件,在创建的时候要初始化该XML文档,同时该文档打开后是XML形式,但是后缀名不是.在网上找了好些资料没找到,只能自己试着弄了一下,没想到成功了,把它记下来 ...