---- 远 程 数 据 对 象(RDO) 是 VB 5.0 中 基 于 ODBC API 的 对 象 模 型, 它 短 小、 快 捷、 强 健, 可 以 访 问 任 何 32 位 ODBC 数 据 源, 如 SQL Server 和 Oracle 数 据 库, 是 访 问 远 程 数 据 库 的 更 新 更 高 级 的 工 具。
---- 使 用 RDO 的 一 般 方 法 如 下。
---- 先 声 明 变 量:
Public con As rdoConnection, res As rdoResultset
---- 然 后 初 始 化 rdoEngine, 设 置 用 户 和 口 令 等 缺 省 参 数;
With rdoEngine
.rdoDefaultUser = "sa" ''''用户为 sa
.rdoDefaultPassword = "pass" ''''口令为 pass
.rdoDefaultCursorDriver = rdUseServer
.rdoDefaultLoginTimeout = 15
End With
---- 再 连 接 到 要 访 问 的 远 程 数 据 库( 可 使 用 DSN Connection 和 DSN-Less Connection)。
---- 使 用 DSN Connection 举 例( 连 接 服 务 器 SERVER 上 的 数 据 库 hotel):
Set con = rdoEnvironments(0).OpenConnection
("hotel", rdDriverNoPrompt, False)
---- 使 用 DSN-Less Connection 举 例( 连 接 服 务 器 SERVER 上 的 数 据 库 hotel):
Set con = rdoEnvironments(0).OpenConnection
("", rdDriverNoPrompt, False, _
"driver={SQL Server};
server=SERVER; database=hotel")
---- 建 立 连 接 后, 既 可 使 用 OpenResultset 方 法 执 行 查 询 并 处 理 结 果 集, 又 可 使 用 Execute 方 法 执 行 包 括 数 据 定 义 和 数 据 操 作 在 内 的 动 作 查 询。 例 如:
Set res = con.OpenResultset
("SELECT * FROM menu", rdOpenStatic)
con.Execute "CREATE VIEW menu_view AS SELECT 代码,
菜名FROM menu", rdExecDirect
---- RDO 最 强 大 和 最 重 要 的 特 性 之 一 是: 它 可 以 查 询 和 处 理 由 存 储 过 程 返 回 的 结 果, 无 论 它 有 多 么 复 杂。
---- 除 RDO 外, 还 可 使 用 RDC 访 问 远 程 数 据 库。
---- 远 程 数 据 控 件(RDC) 与 数 据 控 件(DC) 类 似, 不 同 之 处 是 RDC 使 用 RDO 连 接 到 ODBC 驱 动 程 序 管 理 器, 而 DC 则 使 用 DAO 连 接 到 Jet 数 据 库 引 擎。 利 用 RDO 和 RDC, 无 需 使 用 Jet 引 擎 就 可 以 访 问 ODBC 数 据 源。 这 样, 在 访 问 远 程 数 据 库 时, 可 以 获 得 更 好 的 性 能 和 更 大 的 灵 活 性。
---- 远 程 数 据 控 件 MSRDC 使 用 举 例 如 下。
Connect: driver={SQL Server}; server=SERVER; database=hotel
DataSourceName:
SQL: SELECT * FROM menu
UserName: sa
Password: pass
CursorDriver: 3-rdUseClient
---- 可 以 使 用 RDC 执 行 许 多 简 单 的 远 程 数 据 访 问 操 作, 不 需 编 写 任 何 代 码, 只 要 填 写 有 关 项 就 可 以 了, 使 用 起 来 很 方 便。 但 应 注 意, 除 非 在 设 计 时 禁 止 并 只 在 需 要 时 启 动 RDC , 否 则 它 至 少 将 消 耗 一 个 远 程 数 据 库 连 接。 在 远 程 数 据 库 连 接 资 源 有 限 或 要 求 很 高 效 的 情 况 下, 宜 慎 用、 少 用 RDC 。 这 种 情 况 下, 应 尽 可 能 考 虑 使 用 RDO , 并 使 用 存 储 过 程( 预 编 译 好 的 SQL 语 句)。
---- 最 后 还 应 注 意, 只 有 32 位 操 作 系 统( 如 Windows NT 或 Windows 95), 才 能 支 持 RDO 和RDC 。RDO 和 RDC 也 只 能 用 于 访 问 32 位 ODBC 数 据 源。