wqj ae0b10fea3 新增:SQL Server安装手册 3 سال پیش
..
static ae0b10fea3 新增:SQL Server安装手册 3 سال پیش
01.install.md ae0b10fea3 新增:SQL Server安装手册 3 سال پیش
02.db&table.md 11912155bc 0416编写单表查询培训文件 3 سال پیش
03.singletable.md 11912155bc 0416编写单表查询培训文件 3 سال پیش
04.multitable.md 42c141ce8d 0416优化文档 3 سال پیش
05.group.md b88535b7a8 优化:更改部分错误 3 سال پیش
06.index.md f1d9dd7be8 新增:SQL索引培训资料 3 سال پیش
07.view.md 13803407bf 优化:修改部分文档名称和配置文件 3 سال پیش
08.trigger.md a0af0709fa 11 3 سال پیش
09.procedure.md a0af0709fa 11 3 سال پیش
10.windowsfunc.md a0af0709fa 11 3 سال پیش
11.transaction.md a0af0709fa 11 3 سال پیش
12.commonfunc.md a0af0709fa 11 3 سال پیش
readme.md 4334694762 优化:添加培训目录 3 سال پیش

readme.md

简介

课程安排 |知识章节|培训对象|课时| |-|-|-| |简介|新学员|2| |安装|新学员|1| |库表操作|新学员|1| |单表操作|新学员|1| |多表操作|新学员|1| |分组、聚合函数|新学员|1| |索引|新学员|1| |视图|新学员|1| |触发器|未评级|1| |存储过程|未评级|2| |窗口函数|未评级|1| |事务|未评级|1| |常用函数|未评级|1|

一、必备基础知识

管理信息系统

管理信息系统(Management Information System,简称MIS)是一个以人为主导,利用计算机硬件、软件、网络通信设备以及其他办公设备,进行信息的收集、传输、加工、储存、更新、拓展和维护的系统。

信息与数据

信息

信息是对客观世界中各种事物的运动状态和变化的反映,是客观事物之间相互联系和相互作用的表征,表现的是客观事物运动状态和变化的实质内容。

信息,指音讯、消息、通讯系统传输和处理的对象,泛指人类社会传播的一切内容。人通过获得、识别自然界和社会的不同信息来区别不同事物,得以认识和改造世界。

以古代长城烽火台为例,如果烽火台着火了,传递了什么信息呢?

数据

数据(data)是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未经加工的原始素材。

数据可以是连续的值,比如声音、图像,称为模拟数据;也可以是离散的,如符号、文字,称为数字数据。

以古代长城烽火台为例,如果烽火台着火了,什么是数据呢?

关系与区别

美国信息管理专家霍顿(F.W.Horton)给信息下的定义是:“信息是为了满足用户决策的需要而经过加工处理的数据”。简单地说,信息是经过加工的数据,或者说,信息是数据处理的结果。

结论

虽然管理信息系统是以信息管理为目标,但最终是通过数据管理的方式,直接或间接地管理与数据相对应的信息。

管理信息系统直接打交道的对象是数据。通过进行数据的收集、传输、加工、储存、更新、拓展和维护,转换为信息的收集、传输、加工、储存、更新、拓展和维护。

所以,研发管理信息系统时需要使用到数据库相关技术,一个管理信息系统的数据对象都保存在数据库中。

二、数据库基础知识

数据库与数据库管理系统

数据库

数据库是一个抽象的逻辑概念,从字面意思上理解,就是保存数据的仓库。

不同类型的数据库的结构、特征,以及可以保存的数据都是有差异的。我们这里只讨论最广泛使用的关系型数据库。

关系数据库是由多个表组成的。如果你用过Excel,就会知道Excel是一张一张的二维表。每个表都是由行和列组成的。

同样的,关系数据库里存放的也是一张一张的表,只不过各个表之间是有联系的。所以,简单来说:关系数据库=多张表+各表之间的关系

关系数据库

对应的,学会关系数据库我们只要掌握两点就可以:

1)多张表里面,每一张表的结构

2)各表之间的关系

我们接下来分别来看看这两个知识点。

1) 表的结构

表的结构是指要了解关系数据库中每张表长什么样。

每个表由一个名字标识。表包含带有列名的列,和记录数据的行。我们举个具体的例子就一目了然了。

下面图片里的表名是:学生表,记录了每个学生的信息。

表的结构

表中每一列都有一个名字来标识出该列,这个表里有4列,列名分别是学号,姓名,出生日期,性别。从列名上你也可以知道这一列对应记录的是什么数据。

表的每一行里记录着数据。这里的一行表示该名学生的信息,比如第2行是学号0002学生的信息,他的姓名是猴子,出生日期是1990-12-21,性别是女。

2)各表之间的关系

关系数据库是由多张表组成的,图片里是存放在学校数据库里的4张表。

你能发现下面这4张表之间有什么关系吗?

各表之间的关系

什么是关系呢?

你是你爸爸的儿子,你是你的儿子的爸爸,这就是生活中的关系。其实,数据之间也是有关系的。关系数据库里各个表之间如何建立起关系呢?

我们来看图中“学生表”,“成绩表”这两个表之前的关系。

join

这两张表通过”学号”关联起来,为了更清楚的看到这两个表的关系,PPT里我用相同颜色代表同一个学生的信息。

例如我想知道学生表里学号“0001” 的成绩是多少?那么我就可以在成绩表里去查找“学号”值是0001的行,最后在成绩表里发现有3行数据的学号都是“0001” ,对应的就找到了该学生的三门课程的成绩。

通过这个例子你应该对表之间的关系有了大概的了解。关系就是数据能够对应的匹配,在关系数据库中正式名称叫联结,对应的英文名称叫做join

联结是关系型数据库中的核心概念,务必记住这个概念,后面会在多表查询中具体学到。

数据库管理

根据上面所述的数据库分析内容,我们可以得知,数据库管理其实大体包括三部分内容:

1、创建、删除数据库。

2、在具体的某一个数据库中,创建、删除、修改数据库表。

3、对1个表或多个表的数据进行增、删、查、改。

数据库管理系统

前面讲的都是关系数据库原理方面的基本理论。理论有了,当然的就的有对应的软件实现才能用起来,不然再强大的理论都是一堆无用的东东。这就好比,建筑师如果只有设计草图是无法盖起楼房的,得有具体的建筑人员才能盖起楼房。

所以,上面讲的关系数据库原理就是“设计草图”,那么对应的“建筑人员”是谁呢?

实现数据库原理的“建筑人员”就是数据库管理系统,用来管理数据库的计算机软件。

关系数据库管理系统有很多种,比如MySQL、Oracle、SQL Server等都是实现上面理论的关系数据库。

数据库管理系统

SQL

建筑施工人员通过使铲子,拉土机等工具来盖房子。

那么,我们通过什么工具来操作数据库里的数据呢?

这个工具就是SQL。

SQL是为操作数据库而开发的一种语言,它可以对数据库里的表进行操作,比如修改数据,查找数据。

举一个例子,我觉得可以很好的说明白数据库和sql是什么关系。

把数据库比如一碗米饭,里面放的米是数据。现在我们要吃碗里的米饭,怎么取出碗里的米饭呢?

这时候我们拿一双筷子,用筷子操作碗里的米饭。这里的筷子就是SQL,用来操作数据库里的数据。

总结

1)什么是数据库?

数据库用于存放数据,

关系数据库=多张表+各表之间的关系

2)关系数据库表长什么样?

关系数据库中每个表由一个名字标识。表包含带有列名的列,和记录数据的行。

主键是关系数据库中重要的概念,用来标识数据的唯一性。

3)关系数据库里各个表之间如何建立联系呢?

关系数据库中,如果一张表要关联其他表,通过对应的列产生了关系。这个关系叫做联结。

4)什么是关系数据库管理系统?

实现数据库原理的“施工团队”就是,用来管理数据库的计算机软件叫做数据库管理系统。 常用的关系数据库管理系统有mysql,orcale,sql server为了方便描述,我们后面说到数据库,都是指数据库管理系统。

5)什么是SQL?

数据库里面放着数据,SQL是用来操作数据库里数据的工具。

最后记住下面这张图就掌握了数据库的基本概念。

什么是SQL

三、编程到底编的是什么?

    说到底,编程最终编的是逻辑。编程的过程实际上是创造逻辑的过程。那根据什么来创造逻辑呢?请看下表。

| 研发流程节点 | 输入 | 输出成果 | 成果本质 | 目的价值 | | - | - | - | - | - | | 调研分析需求 | 业务流程 | 信息流 | 业务流程中蕴含的与信息有关的逻辑规则 | 抽象提取业务流程中蕴含的与信息有关的逻辑规则 | | 系统设计 | 信息流(业务流程中蕴含的与信息有关的逻辑规则) | 数据库设计及说明 | 数据逻辑规则 | 从业务流程中蕴含的与信息有关的逻辑规则里面,再抽象提取出来其中蕴含的数据逻辑规则 | | 系统设计 | 同上 | 模块功能 | 功能逻辑,即用户对模块的操作逻辑 | 设计用户对模块的各种操作逻辑,实现数据逻辑规则 | | 研发测试 | 数据库设计及说明、模块功能 | 模块代码 | 代码逻辑 | 支撑系统设计产生的数据逻辑规则、模块功能逻辑 |