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

ASP.NET
Asp.net 时间操作基类(支持短日期,长日期,时间差)
asp.net 获取机器硬件信息(cpu频率、磁盘可用空间、内存容量等)
asp.net 数据库备份还原(sqlserver+access)
Asp.Net 数据操作类(附通用数据基类)
Asp.net 弹出对话框基类(输出alet警告框)
Asp.net 文件上传类(取得文件后缀名,保存文件,加入文字水印)
Asp.net Socket客户端(远程发送和接收数据)
Asp.net 字符串操作基类(安全,替换,分解等)
Asp.Net数据输出到EXCEL表格中
asp.net Gridview里添加汇总行
asp.net UpdatePanel的简单用法
asp.net ajaxControlToolkit FilteredTextBoxExtender的简单用法
this connector is disabled错误的解决方法
sql事务应用积累
asp.net Page.Controls对象(找到所有服务器控件)
在asp.NET中字符串替换的五种方法
ASP.NET缓存方法分析和实践示例代码
asp.net 在DNN模块开发中遇到的resx怪问题
ASP.NET State service状态服务的问题解决方法
asp.net 结合mysql存储过程进行分页代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 198 ::
收藏到网摘: 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日更新,持续更新中...)