当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 数据库系统概论学习笔记

ASP.NET
赫赫大名的A*寻路算法(vb.net版本)
asp.net(c#)下Jmai去说明 使用与下载
[原创]完美解决Could not load file or assembly ''AjaxPro.2'' or one of its dependencies. 拒绝访问。
asp.net下gridview 批量删除的实现方法
用CSS实现图片倾斜 只支持IE
.net get set用法小结
vs 不显示行号的操作方法
ASP.NET页面进行GZIP压缩优化的几款压缩模块的使用简介及应用测试!(附源码)
ASP.Net不执行问题一解
asp.net 无限分类
让VS2008对JQuery语法的智能感知更完美一点
扩展方法ToJSON() and ParseJSON()
asp.net下PageMethods使用技巧
Linq to SQL Delete时遇到问题的解决方法
实现ASP.NET多文件上传程序代码
ASP.NET AJAX 1.0 RC开发10分钟图解
asp.net get set用法
ASP.NET下使用WScript.Shell执行命令
asp.net2.0实现邮件发送(测试成功)
Asp.net 无限级分类实例代码

ASP.NET 中的 数据库系统概论学习笔记


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 82 ::
收藏到网摘: n/a

这段时间非常的忙,但是我终于决定写一些东西来记录这个火热的时期。。。

做开发也有好几年了,数据库相关的系统也设计了几个,经验值不断上升,但是总觉得有一些东西似乎掌握不到其中精髓,入不到更高的层次,于是决定重看《数据库系统概论》和《数据结构》,想从中吸取理论的力量,让我的数据库理解更进一层,学习的过程中,我会将一些心得记录下来,与时空的朋友们共勉!
我的学习环境是:windowsXP,SQL Server2000开发版 with SP3A,VisualStudio2003(C#和ASP.NET With C#)。
基于我现在的水平,学习数据库系统从三个方面入手:
1、学习表的设计规范和表间关系的设计
2、SQL语言的深入学习,包括视图、存储过程的学习
3、数据库系统本身的操作
下面正式开始:
众所周知,数据库系统当前的主流模型是关系型和面向对象模型,层次型和网状模型都处于逐步淘汰的地位,关系型数据库的基本构成是一个个的二维表(Table),二维表中包含“型(Type)”和“值(value)”,“型”也就是我们通常意义上说的列属性,也叫字段,而“值”,就是我们的行(也叫记录)的内容了。表和表之间的相关性,就是我们通常所说的“关系”。
数据库系统在体系结构上采用三级模式结构(外模式Schema、模式External Schema和内模式Internal Schema)
外模式是数据库用户的数据视图,它是用户看到的数据形式,可以理解为SQL语言执行的结果,也就是从各数据表中提取出我们想要的数据。
模式是数据库中全体数据的逻辑结构和特征的描述,可以理解为各个表的设计以及表之间关系设计,它与应用程序设计需求直接关联,它是数据存储的架构,设计的好坏直接影响到应用程序的执行效率。
内模式是数据在数据库系统内部的存储方式,比如我们的数据到底是用顺序存储,还是链表存储,按B树结构存储还是按Hash方法存储,存储是否加密等等,这个模式我们不用理会,它是数据库系统设计师要关心的内容。

所以,我们要关心的是模式和外模式,对应于我上面所说的第1点和第2点。
关系数据库系统是支持关系数据模型的数据库系统,关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。关系数据结构就是一张张的二维表,关系操作通常包括:
选择(Select)、投影(Project)、连接(Join)、除(Divide)、并(Union)、交(Intersection)、差(Difference)
增加(Insert)、删除(Delete)、修改(Update)
关系的三个完整性约束包括:实体完整性、参照完整性和用户定义的完整性。
接下来是SQL查询语言了,SQL语言把复杂的数据操作过程全部都隐藏起来了,我们只需要关心做什么,设计相应的SQL语句,怎么做就由系统给我们做得好好的。
SQL语言分为四类:数据查询、数据操纵、数据定义、数据控制,其中数据查询就是我们最熟悉的select了,它的Group by语句我最喜欢,一下子就将要的数据统计出来了。下面是一个select中嵌套select的例子:
select sname,sage from student where sage<(select min(sage) from student where sdep=''计算机系'') and sdept<>''计算机系''
本SQL的功能是查询:其它系中比计算机系中所有学生年龄都小的学生姓名和年龄

SQL语言的学习和精通是我们学好数据库的重点之一,它和数据表架构的设计互相作用,有什么样的数据表,才会有什么样的SQL语句,这两者的学习是互相促进的,最需要经验积累。基于它的复杂性,这里不深入探索。
有了SQL语言,不得不说的是视图,视图其实和select语句是紧密关联的,它其实相当于一个虚表,执行视图以后看到的是对应的后台表的SQL结果。
这里顺便提一下,SQL Server2000中提供了完整的SQL支持和视图支持,执行SQL语句和视图可以在企业管理器中操作,也可以在查询分析器中操作,更可以在自己的程序中通过对应的接口操作。 (2004年10月14日首发,10月22日更新,持续更新中...)