ADO数据访问接口

上传人:jun****875 文档编号:23768557 上传时间:2021-06-10 格式:PPT 页数:41 大小:267.50KB
返回 下载 相关 举报
ADO数据访问接口_第1页
第1页 / 共41页
ADO数据访问接口_第2页
第2页 / 共41页
ADO数据访问接口_第3页
第3页 / 共41页
点击查看更多>>
资源描述
西 安 通 瀛 软 件 通瀛软件实训基地专业打造 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口内 容 提 要v本 章 介 绍 ADO的 基 本 概 念 , 以 及 如 何 在 ASP程 序 中 使 用ADO的 对 象 。v介 绍 ADO的 对 象 Connection、 RecordSet和 Command的 使 用 。v介 绍 SQL语 句 的 基 本 概 念 及 如 何 利 用 SQL语 句 操 作 数 据 库 。并 介 绍 访 问 数 据 库 的 三 个 基 本 格 式 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口ADO数 据 访 问 接 口 概 述 v ADO常 用 的 四 种 对 象 及 其 功 能 如 下 。n ( 1) 连 接 对 象 ( Connection) : 用 来 连 接 数 据 库 。n ( 2) 记 录 集 对 象 ( RecordSet) : 用 来 保 存 查 询 语 句 返 回 的 结 果 。n ( 3) 命 令 对 象 ( Command) : 用 来 执 行 SQL( Structured Query Language) 语 句 或 者 SQL Server的 存 储 过 程 。n ( 4) 参 数 对 象 ( Parameter) : 用 来 为 存 储 过 程 或 查 询 提 供 参 数 。v 下 面 介 绍 常 用 的 连 接 对 象 ( Connection) 、 记 录 集 对 象( RecordSet) 、 命 令 对 象 ( Command) 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口Connection数 据 对 象 v 与 数 据 库 的 所 有 通 信 都 通 过 一 个 打 开 的 Connection对 象 进 行 。 对 一 个 数 据库 进 行 数 据 的 插 入 和 读 取 之 前 , 必 须 先 打 开 数 据 库 的 连 接v 数 据 库 表 是 由 行 和 列 组 成 的 一 个 二 维 表 , 当 使 用 ADO打 开 数 据 库 的 时 候 , 会有 一 个 指 针 指 向 某 一 行 记 录 , 默 认 的 情 况 下 该 指 针 指 向 数 据 库 表 的 第 一 行 。假 定 该 指 针 叫 “ rs”, 如 果 要 访 问 数 据 库 表 的 字 段 , 可 以 用 图 6-1所 示 的 方 法 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口关 系 型 数 据 库 表 与 指 针 v 其 中 : 写 法 rs(0)、 rs(“学 号 ” )、 rs.Fields(0)和 rs.Fields(“学号 ” )是 相 同 的 , 写 法 rs(3)、 rs(“语 文 ” )、 rs.Fields(3)和rs.Fields(“语 文 ” )是 相 同 的 , 其 余 类 推 。 根 据 上 表 和 注 释 :n rs(4).Name 等 价 于 rs.Fields(4).Name 等 价 于 数 学 n rs(1).Name等 价 于 rs.Fields(1).Name等 价 于 性 别 n 假 设 当 前 的 指 针 指 向 第 三 行 记 录 , 那 么 n rs(2).Value等 价 于 rs(姓 名 )等 价 于 rs(2) 等 价 于 小 张 n rs(4).Value等 价 于 rs(4) 等 价 于 rs(数 学 )等 价 于 60 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口打 开 和 关 闭 数 据 库 连 接 v要 建 立 与 一 个 数 据 库 的 连 接 , 首 先 创 建Connection对 象 的 一 个 实 例 , 然 后 调 用Connection对 象 的 Open方 法 打 开 一 个 连 接v通 过 程 序 6-01.asp输 出 数 据 库 的 表 头 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口数 据 库 调 用 的 基 本 格 式v 格 式 一 : 数 据 库 调 用 的 基 本 格 式v 格 式 说 明 : 利 用 Execute方 法 执 行 SQL语 句v v 第 一 步 : 建 立 Connection对 象v set conn = Server.CreateObject(ADODB.Connection)v 第 二 步 : 使 用 Connection对 象 的 Open方 法 建 立 数 据 库 连 接v conn.Open(driver=Microsoft Access Driver (*.mdb);dbq= Server=服 务 器 地 址 ;User=;Password=SQL Server Server=服 务 器 地 址 ;Database=数 据 库 名 ;uid=用 户 名 ;pwd= Excel Driver=Microsoft Excel Driver(*.xls);Dbq=Excel文 件 的 物 理 路 径文 本 文 件 Driver=Microsoft Text Driver(*.txt;*.csv);DefaultDir=文 件 的 物 理 路 径 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口Connection对 象 的 方 法 和 属 性 方 法 名 称 说 明 用 法Open() 建 立 连 接 Conn.Open(数 据 库 连 接 串 )Close() 关 闭 与 数 据 库 连 接 Conn.Close()Execute() 执 行 数 据 库 查 询 Conn.Execute(SQL语 句 或 者 表 名 )BeginTrans() 开 始 事 务 处 理 Conn.BeginTrans() CommitTrans() 提 交 事 务 处 理 Conn.CommitTrans()RollbackTrans() 取 消 事 务 处 理 Conn.RollbackTRans()Connection对 象 的 方 法 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口Connection对 象 的 属 性 属 性 名 称 说 明 用 法CommandTimeout Execute方 法 最 长 执 行 时 间 默 认 值 为 30秒 钟 , 可 以 修 改ConnectionTimeout Open方 法 最 长 执 行 时 间 默 认 值 为 15秒 , 可 以 修 改ConnectionString 数 据 库 的 连 接 串 可 以 将 连 接 串 赋 值 给 该 属 性 Mode 用 来 设 置 操 作 权 限 1为 只 读 、 2为 只 写 、 3为 可 读 可 写Version 获 取 ADO的 版 本 信 息 Conn.Version Connection对 象 的 属 性 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口向 浏 览 器 输 出 数 据 库 内 容 v向 浏 览 器 输 出 了 表 头 后 , 可 以 利 用 RecordSet记 录 集 返 回 数 据 库 表 中 的 数 据 ,v如 程 序 6-02.asp所 示 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口 输 出 表 中 所 有 数 据 v 用 一 个 循 环 输 出 数 据 库 中 所 有 的 数 据 。 当 数 据 库 打 开 时 , rs对 象 定 位在 数 据 库 表 的 第 一 条 记 录 上 , 输 出 第 一 条 记 录 的 内 容 ; 要 想 输 出 第 二条 记 录 , 必 须 执 行 rs.MoveNext()指 令 , 让 它 移 动 到 下 一 条 记 录 。v rs.BOF( Begin Of File, 文 件 开 头 ) 和 rs.EOF( End Of File,文 件 结 尾 ) 这 两 条 指 令 判 断 记 录 指 针 是 否 移 动 最 前 面 和 最 后 面 ,BOF的 位 置 是 在 第 一 条 记 录 之 前 , EOF是 在 最 后 一 条 记 录 之 后 。 如果 rs指 针 在 最 后 一 条 记 录 上 , 再 执 行 一 次 MoveNext()时 则rs.EOF为 真 。 如 果 rs.EOF或 者 rs.BOF为 真 , 这 时 读 取 数 据 会 出 错 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口数 据 库 表 的 结 构 v数 据 库 表 的 结 构 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口使 用 事 务 v 事 务 在 实 际 编 程 中 使 用 比 较 频 繁 。 事 务 典 型 的 特 征 是 : 事 务 中 一 般 包含 几 个 事 件 , 只 有 几 个 事 件 同 时 执 行 成 功 , 整 个 事 务 才 被 执 行 , 否 则事 务 中 的 事 件 将 不 被 执 行 。v 比 如 : 在 ATM机 上 取 200元 , 需 要 执 行 两 个 操 作 , 1、 从 银 行 账 户上 减 去 200; 2、 ATM机 将 钱 返 给 用 户 。 这 两 个 事 件 将 构 成 事 务 。在 实 际 编 程 中 , 需 要 同 时 成 功 , 同 时 失 败 。v 使 用 方 法 如 程 序 6-05.asp所 示 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口Connection对 象 中 的 Errors集 合 vError对 象 是 Connection对 象 的 子 对 象 。 数 据 库 程 序 运行 的 时 候 , 一 个 错 误 就 是 一 个 Error对 象 , 所 有 的 Error对 象 就 组 成 了 Errors集 合 , 又 称 为 错 误 集 合 。v可 以 利 用 Errors集 合 的 Count属 性 来 判 断 是 否 有 错 误 发生 , 还 可 以 提 取 出 错 误 的 描 述 , 最 后 根 据 错 误 的 类 型 , 给出 相 应 的 解 决 措 施 。 Errors对 象 提 供 一 些 属 性 来 得 到 错误 信 息 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口Error对 象 的 属 性 参 数 说 明 用 法Number 错 误 编 号 Err.NumberDescription 错 误 描 述 Err.DescriptionSource 发 生 错 误 的 原 因 Err.Source HelpContext 错 误 的 提 示 文 字 Err.HelpContextHelpFile 错 误 的 提 示 文 件 Err.HelpFileNativeError 数 据 库 服 务 器 产 生 的 错 误 Err.NativeErrorError对 象 的 属 性 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口RecordSet数 据 对 象 v记 录 集 可 以 用 来 代 替 表 中 的 记 录 。 一 个 记 录 集 包 含 一 条 或多 条 记 录 ( 行 ) , 每 条 记 录 包 括 一 个 或 多 个 域 ( 字 段 ) 。在 任 何 时 刻 , 只 有 一 条 记 录 是 当 前 记 录 。v创 建 记 录 集 对 象 的 一 个 实 例 , 可 以 使 用 Connection对象 的 Execute()方 法 , 用 Execute()创 建 的 记 录 集 指 针只 能 向 下 , 而 不 能 向 上 移 动 , 即 不 能 执 行 MoveFirst()和 MovePrevious()指 令 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口RecordSet对 象 的 属 性 及 方 法 v利 用 RecordSet对 象 的 属 性 和 方 法 可 以 完 全 操作 一 个 数 据 库 , 理 论 上 只 要 SQL语 句 可 以 完 成 的操 作v利 用 RecordSet对 象 都 可 以 实 现 。 RecordSet对 象 的 属 性 和 方 法 很 多 , 常 用 的 方 法 如 表 6-6所示 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口RecordSet对 象 的 方 法 方 法 说 明 用 法Open() 打 开 记 录 集 rs.Open()Close() 关 闭 记 录 集 rs.Close()Requery 重 新 打 开 记 录 集 rs.Requery()Move() 当 前 记 录 前 后 移 动 条 数 rs.Move(4) 向 后 面 移 动 4行MoveFirst() 移 动 到 第 一 条 记 录 rs.MoveFirst() MoveNext() 移 动 到 下 一 条 记 录 rs.MoveNext() MovePrevious() 移 动 到 记 录 集 中 的 上 一 条 记 录 rs. MovePrevious()MoveLast() 移 动 到 记 录 集 的 最 后 一 条 记 录 rs. MoveLast()AddNew() 向 记 录 集 中 添 加 一 条 新 记 录 rs.AddNew()Delete() 从 记 录 集 中 删 除 当 前 记 录 rs. Delete()Update() 保 存 对 当 前 记 录 所 做 的 修 改 rs. Update()UpdateBatch() 保 存 对 一 个 或 多 个 记 录 的 修 改 rs. UpdateBatch()CancelBatch() 取 消 一 批 更 新 rs. CancelBatch()RecordSet对 象 的 方 法 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口RecordSet对 象 的 属 性 属 性 说 明 用 法ActiveConnection 当 前 记 录 集 用 的 数 据 连 接 rs. ActiveConnection = connRecordCounts 记 录 集 的 总 数 rs.RecordCountsBOF 记 录 集 的 开 头 rs.BOF EOF 记 录 集 的 结 尾 rs.EOFPageCount 返 回 记 录 集 中 的 逻 辑 页 数 rs.PageCountPageSize 返 回 逻 辑 页 中 的 记 录 个 数 rs.PageSize 默 认 值 是 10AbsolutePage 指 定 当 前 的 页 rs.AbsolutePageAbsolutePosition 指 定 当 前 的 记 录 rs.AbsolutePositionRecordSet对 象 的 属 性 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口使 用 RecordSet对 象 打 开 数 据 库 v 格 式 二 : 数 据 库 调 用 的 基 本 格 式v 格 式 说 明 : 利 用 RecordSet对 象 打 开 数 据 库 表v v 第 一 步 : 建 立 Connection对 象v set conn = Server.CreateObject(ADODB.Connection)v 第 二 步 : 使 用 Connection对 象 的 Open方 法 建 立 数 据 库 链 接v conn.Open(driver=Microsoft Access Driver (*.mdb);dbq= dbq=“ _v Server.MapPath(Access数 据 库 )v 第 三 步 : 建 立 Command对 象v cmd = Server.CreateObject(ADODB.Command)v cmd.ActiveConnection = connv cmd.CommandText = sqlv 第 四 步 : 使 用 Command对 象 的 Execute方 法 执 行 SQL语 句 v 如 果 执 行 查 询 语 句v rs = cmd.Execute()v 如 果 执 行 数 据 操 纵 语 句v cmd.Execute() 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口使 用 Command对 象v使 用 Command对 象 来 执 行 SQL 语 句 , 如 程 序6-09.asp所 示 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口例 6-2 分 页 列 表 的 删 除 和 修 改 v本 案 例 实 现 的 功 能 是 : 为 案 例 6-1的 分 页 列 表 添加 修 改 数 据 和 删 除 数 据 的 功 能 。 首 先 为 列 表 添 加两 列 : 修 改 和 删 除 。 显 示 的 主 页 面 如 图 6-16所示 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口案例6-3 分页版本的留言簿v这 里 再 对 留 言 簿 作 一 次 升 级 , 在 案 例 5-2的 基 础上 加 入 分 页 功 能 。v只 要 更 改 display.asp文 件 就 可 以 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口小 结v本 章 重 点 理 解 访 问 数 据 库 的 三 大 基 本 格 式 及 各 自 的 特 点 。掌 握 Connection, RecordSet和 Command对 象 的 使 用方 法 。v熟 练 掌 握 利 用 格 式 二 实 现 数 据 库 的 分 页 显 示 和 利 用 SQL语句 操 作 数 据 库 的 方 法 。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口本 章 习 题v一、选择题v 1. 可 以 使 用 ADO来 访 问 的 数 据 库 是 _。v A) Microsoft Access B) Microsoft SQL Serverv C) Oracle D) 以 上 都 可 以v 2. 命 令 对 象 ( Command) : 用 来 执 行 _。v A) SQL语 句 B) SQL Server的 存 储 过 程v C) 连 接 数 据 库 D)返 回 记 录 集v 3. 语 句 rs.Fields.Count 返 回 的 值 是 _。v A) 记 录 集 的 行 数 B) 记 录 集 的 列 数v C) 记 录 集 的 行 数 +1 D) 记 录 集 的 列 数 -1v 4. 使 用 BeginTrans()_, 利 用 CommitTrans()_, 如 果 有 错 误 发 生 ,利 用 RollbackTrans()来 _。v A) 提 交 一 个 事 务 B) 总 结 事 务v C) 开 始 一 个 事 务 D) 取 消 事 务 v 5. 可 以 利 用 Errors集 合 的 _来 判 断 是 否 有 错 误 发 生v A) Number属 性 B) Description属 性v C) Count属 性 D) Source属 性 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口二、填空题v1. 当 执 行 事 务 的 时 候 , 如 果 没 有 错 误 发 生 , 则conn.Errors.Cout将 为 _。v2. 创 建 记 录 集 对 象 的 一 个 实 例 , 可 以 使 用_, 这 种 方 法 创 建 的 记 录 集 指 针 只 能 向 下 ,而 不 能 向 上 移 动 , 即 不 能 执 行 MoveFirst()和MovePrevious()指 令 。v3. 判 断 记 录 集 合 是 否 到 表 的 最 后 , 利 用 语 句_。 西 安 通 瀛 软 件 实 训 基 地 专 业 打 造 通 瀛 软 件第 六 章 ADO数 据 访 问 接 口三、简答题与程序设计题v1. 简 述 ADO的 功 能 及 常 用 的 三 大 对 象 的 用 途 。v2. 访 问 数 据 库 格 式 一 有 什 么 特 点 ? 可 以 执 行 哪 些 SQL语句 ?v3. 如 何 实 现 模 糊 查 询 ?v4. 如 何 用 变 量 替 换 SQL语 句 的 值 ?v5. 格 式 二 的 数 据 打 开 方 式 和 锁 定 方 式 有 几 种 ? 各 有 什 么含 义 ?v6. 比 较 访 问 数 据 库 的 三 个 基 本 格 式 的 异 同 。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!