在开始学习ASPNET 数据控件之前让我们先考虑一下数据源数据大致上可以分为类关系型数据(relational data)根据范式规则组织成一系列的表Microsoft AccessMicrasoft SQL ServerOracleSAPDB和MySQL中的数据都属于这种类型第二种类型的数据以树型结构存储例如XML文件Windows注册表和Windows文件系统最后一种类型数据的形式非常多例如Excel文件文本文件或私有格式本教程(与绝大多数Web站点的数据交互一样)讨论关系型数据和XML文件
关系型数据库将信息分割到表(table)中而表包含了记录(record也称为行)一条记录代表着表的主题的一个实例每张表包含多个字段(field)也称为列它们按类型组织数据例如一张员工的表中可以包含每个员工的记录该表的列可能是NameFirst NameLast DateOfHire等等对于每条记录每一列都有一个记录的值大多数管理系统中的数据库由一组表组成在Microsoft SQL Server中一个或多个数据库一起形成服务器的一个实例它也是本书中使用的数据库一般情况下表中只包含数据怎样组织数据的描述信息字段的名称以及各种限制都存放在数据库中一个称为元数据(metadata)的独立结构中
XML文件不同于关系型数据库首先它不是使用表而是将数据存放在带有分支的树中分支保存的数据越来越细化每个数据集合以及单个数据都包含在节点中例如XML文件Employees中有一个Employees节点表示树型结构的主干接着对每个员工设置一个分支在这个分支中将有FirstName LastName等分支其次XML文件是自描述的因为元数据和数据存放在一起每个信息都有一个HTML标记该标记相当于一个容器对所包含的数据进行描述例如数据John实际将保存为<NameFirst>John</NameFirst>虽然自描述符会使XML文件增大但它使得在没有元数据信息的情况下能容易地理解数据
几乎所有的数据源都有某种系统控制数据的使用权限安全上的第一个问题是验证系统在这里判断是谁要求使用数据关于验证的话题在第章中己经详细介绍过因此这里不再花费过多时间进行讨论一般地有两种类型的验证Windows Authentication(也称为Trusted Security)和SQL Authentication使用哪种验证是在安装数据库的时候决定的对于SQL Server Express可以选择Windows Authentication或Mixed后者意味着可以使用Windows Authentication或SQL Authentication a SQL Server Express在安装时默认选择Mixed Authentication本书默认使用Windows Authentication
本教程主要使用Microsoft的SQL Server该产品以不同的功能集出售但对于我们最简单版本(SQL Server Express)的功能就足够了幸运的是Microsoft免费提供SQL ServerExpress而且可以按照本书给出的指令自动安装SQL Server Express的好处在于当您希望将自己的站点部署给公众访问的时候所有的代码都不需要修改就可以直接移植到功能完整的SQL Server中
一旦通过验证(证明自己就是自己声称的人)在使用数据时将有一组权限和限制首先是查看数据的限制数据库管理员(DBA)通常会限制直接访问表取而代之您可能只能通过某个视图或查询查看包含一定字段或记录的数据其次您可能会遇到怎样修改数据的限制或者能否修改数据的限制最后即使可以修改数据也存在数据可以怎样修改的限制(称为约束)以使用Wrox United为例一般情况下不能删除在赛程表中的某个球队(这样就会使赛程表存在着逻辑上的错误造成某些比赛没有两个球队参加)
ASPNET 入门教程完整版