12.07.2015 Views

Lazarus - 错误提示:发生了异常

Lazarus - 错误提示:发生了异常

Lazarus - 错误提示:发生了异常

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

第 五 章 CRUD什 么 是 CRUD? 就 是 Create + Read + Update +Delete 。 是 某 语 言 创 造 的 大量 术 语 的 一 个 , 其 实 <strong>Lazarus</strong> 做 这 些 简 直 是 小 Case。对 于 某 些 语 言 , 他 们 提 出 CRUD 这 个 概 念 , 为 什 么 呢 ? 这 些 语 言 一 般 是 没有 指 针 , 表 达 复 杂 数 据 能 力 不 足 , 所 以 提 出 分 层 概 念 , 我 们 来 看 看 这 些 概 念 :VO---- Value Object 负 责 保 存 数 据 的 对 象 。 相 当 于 lazarus 的 Type Record写 代 码MVC ---- Modal View Control 其 实 相 当 于 Dataset + Form + Control + 自DAO--- Data Access Object 相 当 于 Dataset + connection, 或 者ZEOSDBO 等 ;那 些 概 念 的 提 出 , 是 因 为 :1. 将 程 序 编 写 划 分 更 细 , 维 护 更 方 便 ;2. 语 言 特 性 难 于 实 现 一 些 复 杂 数 据 , 比 如 内 存 表 ;3. 实 现 数 据 库 无 关 性 , 实 现 快 速 移 植 , 而 ZEOSDBO 就 相 当 于 DAO 层 ;而 lazarus 这 样 的 开 发 方 式 可 以 实 现 这 些 概 念 , 但 没 有 多 少 必 要 。 首 先 是 因为 LCL,FCL 这 样 的 库 已 经 非 常 优 秀 , 而 且 如 dataset,memdataset 这 样 的 数 据 结 构已 经 能 够 表 达 足 够 强 大 的 功 能 。 所 以 我 们 还 是 坚 持 原 生 的 开 发 方 法 。 当 然 以 后 也可 以 研 究 一 下 那 些 分 层 方 法 , 可 以 参 考 Jazz ,EMvc 等 代 码 。 不 过 那 些 东 西 作 为研 究 还 行 , 实 际 用 , 相 当 于 脱 了 裤 子 放 屁 。 因 为 <strong>Lazarus</strong> 本 身 设 计 为 快 速 开 发 工具 , 所 见 所 得 是 最 大 的 卖 点 , 如 果 你 非 要 那 么 做 , 就 好 比 买 个 大 厦 只 住 一 间 , 浪费 大 量 的 资 源 。我 们 来 看 一 下 CRUD 的 具 体 操 作 吧 。我 们 新 建 一 个 工 程 demo5, 四 个 按 钮 , 代 码 如 下 :procedure TForm1.Button1Click(Sender: TObject);beginzquery1.close;zquery1.sql.text := 'select * from table1';

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!