16
ASP 十十十十十十十

十一 ASP 对数据库的访问

Embed Size (px)

DESCRIPTION

十一 ASP 对数据库的访问. 内容提要. 本节主要介绍数据库程序设计基础 从应用的角度介绍了 SQL 语言,重点介绍了常用的数据查询语言和数据操作语言 最后举例说明如何使用 ASP 程序执行 SQL 语句. 数据库系统简介. 数据库管理系统——通常是指 DBMS ( Database Management System ) 它是一个程序集合,使我们能够在数据库中存储和修改信息,并从数据库中抽取信息。 目前主要使用的是关系型数据库. 数据库的基本术语. - PowerPoint PPT Presentation

Citation preview

Page 1: 十一  ASP 对数据库的访问

十一 ASP 对数据库的访问

Page 2: 十一  ASP 对数据库的访问

内容提要 本节主要介绍数据库程序设计基础 从应用的角度介绍了 SQL 语言,重点介

绍了常用的数据查询语言和数据操作语言

最后举例说明如何使用 ASP 程序执行SQL 语句

Page 3: 十一  ASP 对数据库的访问

数据库系统简介 数 据 库 管 理 系 统 —— 通 常 是 指

DBMS ( Database Management System )

它是一个程序集合,使我们能够在数据库中存储和修改信息,并从数据库中抽取信息。

目前主要使用的是关系型数据库

Page 4: 十一  ASP 对数据库的访问

数据库的基本术语 数据库就是把各种各样的数据按照一定的规则组合在

一起形成的数据集合。常用的关系型数据库有:Access 、 SQL Server 、 Oracle 、 FoxPro 等等。关系型数据库是由二维表格组成的数据集合。

Page 5: 十一  ASP 对数据库的访问

SQL 语言概述 SQL ( Structured Query

Language ,结构化查询语言)是关系型数据库的标准语言,是由国际标准组织提出的,各种关系型数据库都支持SQL 指令。

Page 6: 十一  ASP 对数据库的访问

基本 SQL 语句 基本的 SQL 语句包括数据查询语言 DQL

( Data Query Language )和数据操纵语言 DML ( Data Manipulation Language ),也就是对数据库最常用的四大基本操作: 查询( SELECT )、插入( INSERT )、

更新( UPDATE )和删除( DELETE )。

Page 7: 十一  ASP 对数据库的访问

数据准备 首先创建一个 Access 数据库表,打开

Access2003 ,选择“新建数据库”,数据库命名为:“ person.mdb” ,出现如图界面。

Page 8: 十一  ASP 对数据库的访问

查询句型一:简单查询语句 例 1 : SELECT * FROM grade功能说明:将 grade 表中的所有字段取出来。例 2 : SELECT 学号 , 姓名 FROM grade功能说明:将 grade 表中学号和姓名字段取出来。例 3 : SELECT 学号 , 姓名 , 语文 + 数学 + 英语 as

总成绩 FROM grade功能说明:将 grade 表中的学号和姓名取出来,并

将语文、数学和英语成绩相加产生虚拟列总成绩。

Page 9: 十一  ASP 对数据库的访问

查询句型二:使用条件查询 例 1 : SELECT * FROM grade WHERE 数学 >60 功能说明:把所有数学成绩大于 60 分的记录选出来。 例 2 : SELECT * FROM grade WHERE 数学 =300 OR 语文 =300 功能说明:把数学成绩等于 300 分或者语文成绩等于 300 分的人选出

来。 例 3 : Like 子句基本格式一:“ _” 匹配。 功能说明:每个下划线匹配一个任意字符,注意只匹配一个字符。比

如:姓名 like '_ 敏 ' ,匹配姓名以“敏”字结尾且字数等于二的所有数据记录,如:“张敏”。

例 4 : Like 子句基本格式二:“ %” 匹配。 比如:姓名 Like '% 敏 %' ,匹配姓名中出现“敏”的所有数据记录,

如:“周惠敏”,“于敏”、“敏大”、“敏二”等。比如要在数据库中查询姓江的人,只要利用一条 SQL 语句就可以, SELECT * FROM 数据库表 WHERE 姓名 Like ' 江 %' 。

Page 10: 十一  ASP 对数据库的访问

查询句型三:进行排序 例 1 : SELECT * FROM grade ORDER BY 数学 注:从低

到高排序 功能说明:从 grade 表中取出所有字段,并按数学成绩排序。 例 2 : SELECT * FROM grade ORDER BY 数学 , 语文 功能说明:从 grade 表中取出所有字段,并按数学成绩排序,如

果数学成绩相同则按照语文成绩排序。 例 3 : SELECT * FROM grade ORDER BY 数学 DESC 注:

从高到低排序 功能说明:从 grade 表中取出所有字段,并按数学成绩倒序。 例 4 : SELECT TOP 5 * FROM grade 功能说明:从 grade 表中取出前五条记录的所有字段。

Page 11: 十一  ASP 对数据库的访问

DML 的基本格式 DML 包括三种基本格式:

数据添加( INSERT INTO )、数据修改( UPDATE )和数据删除( DELETE )。

Page 12: 十一  ASP 对数据库的访问

DELETE 指令:删除记录。 基 本 语 法 : DELETE FROM 数 据 表

WHERE 条件 例: DELETE FROM grade WHERE 数学

=0 功能说明:删除所有数学成绩为零的记

录,如果没有 WHERE 子句,则删除所有记录。

Page 13: 十一  ASP 对数据库的访问

UPDATE 指令:更新数据记录 基本语法: UPDATE 数据表 SET 字段名

1= 新值 , 字段名 2= 新值 … WHERE 条件 例 1 : UPDATE grade SET 数学 = 数学

+10 说明:将 grade 表中所有人的成绩加10 分

例 2 : UPDATE grade SET 数 学 =100 WHERE 姓名 like '% 敏 %'

功能说明:将姓名中含有敏的人的数学成绩更新为 100 分

Page 14: 十一  ASP 对数据库的访问

INSERT INTO 指令:添加数据记录。( INTO 可以省略)

基本格式 1 : INSERT INTO 数据表 VALUES (字段新值) 基 本 格 式 2 : INSERT INTO 数 据 表 ( 字 段 一 , 字 段 二 , … … )

VALUES (字段新值) 其中关键字两种格式的区别是:当 VALUES 含有数据库表所有字段的值,

并且顺序和数据库字段一致时,就可以省略数据库表后面的字段名称。 例 1 : INSERT INTO grade( 学号 , 姓名 , 数学 ) VALUES (1234,

' 小周 ',70) 例 2 : INSERT INTO grade VALUES (5678, ' 小周 ',70,80,90) 其中,例 2 等价于: INSERT INTO grade( 学 号 , 姓 名 , 语 文 , 数 学 , 英 语 ) VALUES

(5678, ' 小周 ',70,80,90) 因为包含数据库所有字段,而且顺序和数据库一致,所以字段列表可以

省略。

Page 15: 十一  ASP 对数据库的访问

ASP 中使用 SQL 语句 在 ASP 程序中,可以执行各种 SQL 语

句。通常情况下分成两大类:执行 SQL查询语句和执行 SQL 操作语句。

其中 SQL 查询语句包括 SELECT 语句, SQL 操作语句包括: INSERT 语句、UPDATE 语句和 DELETE 语句。

Page 16: 十一  ASP 对数据库的访问

在 ASP 中执行 SQL 查询语句 执行 SQL 查询语句如程序 5-01.asp 所示。

可以在文本框内输入测试的 Select 语句。程序中利用语句“ If Request(”SQL“) <>”“ Then”判断是否有输入,然后连接到当前文件夹下的 person.mdb 数据库文件。

函数“ Function rstotab(rs)” 的功能是将数据以表格的形式输出到浏览器上。每条语句的具体意义,将在下节进一步讲解。