《优化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数据库(一)的更多相关文章

  1. 优化MySchool数据库设计之【巅峰对决】

    优化MySchool数据库设计 之独孤九剑 船舶停靠在港湾是很安全的,但这不是造船的目的 By:北大青鸟五道口原玉明老师 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识 ...

  2. 优化MySchool数据库(二)

    优化School数据库(TSQL建库建表建约束) 使用T_sql代码建库.建表.建约束: 建库: Create database HotelManagerSystem on ( ---- 数据文件-- ...

  3. 优化MySchool数据库设计总结

    数据库的设计   一:什么是数据库设计? 数据库设计就是将数据库中的数据实体以及这些数据实体之间的关系,进行规范和结构化的过程. 二:为什么要实施数据库设计? 1:良好的数据库设计可以有效的解决数据冗 ...

  4. 优化MySchool数据库设计

    第一章 数据库的设计 1.E-R图中: 矩形:实体 椭圆:属性 菱形:关系 直线:连接实体,属性和关系 2.映射基数 一对多 多对一 多对多 3.范式: 第一范式:确保每列的原子性 第二范式:确保表中 ...

  5. 优化MySchool数据库(存储过程)

    什么是“存储过程”: ---- 数据库中,用于存储“业务逻辑”的技术!(T-SQL代码当做数据一样保存到数据可) 语法 : [if exists(select * from sysobjects wh ...

  6. 优化MySchool数据库(事务、视图、索引)

    事务.视图.索引: 事务:当生活逻辑中的“一个步骤”,需要使用多条SQL去完成时,必须使用事务来确保其“完整性“. 视图:简化数据库结构,方便你编写SQL语句(简化SQL语句的编写) 索引:提高“数据 ...

  7. 优化MySchool数据库(四)

    关于“无法附件数据库”过程的遇到的问题: 1.数据文件本身,具有访问权限的限制 ---- 选中 数据库文件所在的文件夹---->右键菜单(属性)----> 安全 --->User用户 ...

  8. 优化MySchool数据库(三)

    使用T_SQL 编写业务逻辑: 如何定义及使用“变量”: ---- 让电脑帮我记住一个名字(王二) C#: string   name ;    [定义一个变量] name = "王二&qu ...

  9. accp7.0优化MySchool数据库设计内测笔试题总结

    1) 在SQL Server 中,为数据库表建立索引能够(C ). 索引:是SQL SERVER编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 ...

随机推荐

  1. 解析导航栏的url--selnium,beautifulsoup实战

    前段时间做ui自动化测试的时候,导航栏菜单始终有点问题,最后只好直接获取到url,然后直接使用driver.get(url)进入页面: 包括做压测的时候,比如我要找出所有报表菜单的url,这样不可能手 ...

  2. Maven提高篇系列之(五)——处理依赖冲突

    这是一个Maven提高篇的系列,包含有以下文章: Maven提高篇系列之(一)——多模块 vs 继承 Maven提高篇系列之(二)——配置Plugin到某个Phase(以Selenium集成测试为例) ...

  3. 【转】XPath的学习

    xpath的作用就是两个字“定位”,运用各种方法进行快速准确的定位,推荐两个非常有用的的firefox工具:firebug和xpath checker   定位 1.依靠自己属性,文本定位 //td[ ...

  4. sql 删除重复行

    1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from ...

  5. WPF学习之绘图和动画

    如今的软件市场,竞争已经进入白热化阶段,功能强.运算快.界面友好.Bug少.价格低都已经成为了必备条件.这还不算完,随着计算机的多媒体功能越来越强,软件的界面是否色彩亮丽.是否能通过动画.3D等效果是 ...

  6. Ajax.ActionLink打开页面之后,表单验证失效

    这两天遇到这个问题搞了很久,原因是验证插件默认是在页面初始化时初始化,ajax调用导致页面不会初始化,所以验证插件也没有初始化.解决方案如下 @Ajax.ActionLink("Edit&q ...

  7. iOS阶段学习第27天笔记(UIButton-UIImageView的介绍)

    iOS学习(UI)知识点整理 一.关于UIButton的介绍 1)概念:UIButton 是一种常用的控件,通过点击触发相应的功能 2)UIButton 的几种常用的状态        1.UICon ...

  8. jquery基本选择器id

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. MySQL 语句大全--------添加列,修改列,删除列

    ALTER TABLE:添加,修改,删除表的列,约束等表的定义. 查看列:desc 表名; 修改表名:alter table t_book rename to bbb; 添加列:alter table ...

  10. hibnate 创建表的时候type=innodb报错

    这个原因是在MYSQL5.5及以后版本中type=InnoDB 由ENGINE=InnoDB  代替. 解决办法,自己定义一个方言: package com.hotusm.dialect; /** * ...