数据库在网站中的应用

互联网其实只有一个功能:提供信息。使用html语言再加上一些javascript和动态html的技巧,我们便能做出非常吸引人的网页。但是接下来就该在这些独具特色的网页上填充一些有意义的内容。我们知道任何能够吸引网民不断访问的网站都会及时更新的内容。用传统的建设网站的眼光来看,就意味着网站要提供多个html文件,这样太麻烦了。即使我们认同这样的工作方式,网站建设中还是有许多问题解决不了。

传统的网站建设已经不能满足需要,现在的网站更加强调的是交互性和信息量。好在这些令人头疼的问题现在已经有了解决的办法,那就是基于数据库来设计网站,这样做的好处有很多。

存取数据库的对象

虽然有了ODBC标准,可以简化一些程序设计工作,但是在实际的访问数据库过程中,ODBC还是显得有些复杂,因而微软公司又提供了许多存取数据库对象来简化访问数据库的程序设计,这些存取数据库对象都可以使用ODBC。最常使用的存取数据库对象包括:DAO、RDO和ADO。

DAO数据访问对象是第一个面向对象的接口,它实际上包含了microsoft jet数据库引擎,这是一个由access所使用的引擎,并允许应用程序开发者通过ODBC对象直接连接到其他数据库一样,直接连接到access表,当然也可以访问SQL Server数据库。DAO最适用于单系统应用程序或小范围本地分布使用。

使用ASP访问数据库

网站建设编码时数据库的访问用到SQL语言,它是当前各种数据库的标准查询语言。SQL语言拥有自己的语法标准,并且能够访问数据库中得数据表。对于SQL语言而言,不管当前操作的数据库部结构如何,它只是一个数据表的集合,其中包含许许多多的行和列。作为一个数据库开发人员,必须熟悉SQL语言,因为它是操作数据库的基础。当前,SQL语言的标准还处于不断变化中,并且在不同的数据库产品中,也会由不同的SQL语言实现,具体的SQL语法也各不相同,因而在开发具体的数据库产品时,需要参考相应的产品帮助。

在数据库的操作过程中我们经常用到SQL语言。利用ASP访问数据库时,ASP访问SQL Server数据库建立web站点。浏览器首先向web服务器发出要访问一个页面的请求,这里使用的web服务器是微软的IIS,这个web服务器对ASP页面程序提供了最佳支持。Web服务器接到请求后,把需要的ASP程序读入内存,解释并执行ASP程序代码。

数据库中的表和视图

表是由列和行组成的一种简单的数据库对象,可以用来存储数据。在数据库中可以有多达上亿的表,每个表可以有1024列,唯一限制数据库行数的因素是用来存储数据库的磁盘空间。在SQL Server的表中每行的长度最多是8060字节。表中没列只能包含一种数据类型。SQL Serve支持两种类型的表:永久表和临时表。

永久表在数据库中建立后一直存在,直到被删除。通常,这些表用来存储永久数据,例如web站点注册用户的信息、站点页面中得各种内容等。另一种就是临时表,通常由应用程序创建用来存储临时数据,ASP程序可以使用数据库的存储过程来建立临时表。有两种类型的临时表:一种是局部临时表,该表由一个用户建立并且只能供这个用户访问。另一种临是表是全局临时表,这类表由一名用户建立而本系统中的每个用户都可访问。这些表建在tempdb数据库里。局部临时表在创建它的用户退出系统时被清除,全局临时表在创建它的用户退出系统时被删除,而那些正引用它的用户也将退出引用。临时表创建时用前缀“#”表示局部临时表,用“##”表示全局临时表。

数据库中索引的应用

索引是一种特殊类型的数据库对象,与表直接相关。索引主要是用来提高访问表中数据的速度,并能使一些数据完整性问题得到强制实现,如表中行的唯一性。索引包含了由表中至少一列所构成的键值。这些键值使得SQL Server能很快地指向表中行而无须扫描全表。如果创建一个没有建立索引的表,SQL Server在存储数据到表中时将不会有什么特别的顺序。SQL Server中可以建立两种类型的索引。一种索引是簇索引,在簇索引中,SQL Server按其被索引的顺序存储数据。例如:在一个包含注册用户名称的表中,如果按注册用户名称索引,SQL Server就会依字母顺序来存储注册用户名称。如果这个键值是基于数值类型列建立的,SQL Server将按数值大小顺序来存储数据。这类索引对查找指定行或指定范围的行是非常有用的。只有当表中有了簇索引后,表中的数据才可以按某种顺序来存储。

使用JDBC连接后台数据库

当我们的JSP程序获取数据库的数据时,是无法直接进行存取的,因为后台数据库并无法明白JSP命令的意义。所以,当我们要存取后台数据库时必通过一个标准接口来存取,那就是JDBC。所以,JDBC可以说是JSP程序与后台数据库的一个沟通管道。基本上,JDBC也可以说是一种API,它主要的功能:1、建立与后台数据库的连接。2、向后台数据库传送SQL程序处理。3、将查询的结果传回JSP程序处理。

由于JDBC是由Java语言所开发而成的,所以具有跨平台的特性。程序开发人员只要专注于程序的开发及SQL语句的撰写,即可通过JDBC这个标准接口来存取后台数据的数据。但是,要与它连接的数据库需具备有相对应的JDBC驱动程序,否则是无法连接的。

通过web存取数据库

信息爆炸的时代,在许多时候,我们不但利用数据库保存大量的信息,更会利用网际网络来散布这些有用的信息,和数据库相连的web网站在网际网络上大受欢迎,如国内著名的人力资源网站,提供在线数据库让许多求职者在网站上登录自己的履历数据,也可以让许多公司在网站内的履历数据库中寻找合适的人才,这使得求职者和求才者形成一个非常良好的互动关系。

存取架构仍是遵循传统的client/server架构。在服务器端由web服务器和数据库服务器所组成,而client端只需要一个支持Java的浏览器即可。服务器端的web服务器负责执行JSP程序,我们在JSP程序中通过JDBC的处理机制来和数据库服务器相连,并取数据库中的数据,当让我们也可以通过JDBC向数据库下达SQL命令,对数据库进行新增、删除和修改记录等操作,这一切都靠JDBC提供的类与方法来达成。Web服务器还有一个工作,便是将我们操作数据库的结果,以HTML的形式通过HTTP协议,回传给前端的浏览器。在这整个存取架构中,最重要的部分就JDBC,没有JDBC,我们的JSP程序根本没有办法和数据库相连。

«1»