使用XForms 和 Ruby on Rails开发小型门诊管理系统,第1部分 - 编程入门网
S(INFORMATION)
VALUES (''<?xml version="1.0" encoding="UTF-8"?>
<Info>
<FirstName>John</FirstName>
<Age>33</Age>
<Insurer>Blue Armor</Insurer>
<ID>555-88-1212</ID>
</Info>'');
使用XForms 和 Ruby on Rails开发小型门诊管理系统,第1部分(5)时间:2011-11-29 ibm Michael Galpin看起来似乎是插入一个简单的字符串,不过不用担心。DB2 不会将其看 作是字符串。这和在查询中编写日期非常类似。按照特定的语法编写字符串,让数据库解析为特定的数据 类型。如果语法错误,查询将失败。处理 XML 的方式是一样的。使用 SQL 和 XQuery 还可以查询 XML, 如清单 3 所示。 清单 3. SQL/XML Query SELECT XMLQUERY(''<Patients> {for $i in $x/Info where $i/Insurer = "Blue Armor" return <Patient>{$i/FirstName/text()}</Patient>} </Patients>'' passing P.INFORMATION as "x") from DOC.PATIENTS P; 注意这里把 SQL (SELECTION ... from ...) 和 XQuery 混合在一起了。被称为 SQL/XML。关键在于使用 XMLQUERY 保留 字表明要通过 SQL 选择语句执行针对传入 XML 文档的 XQuery。运行该查询将返回清单 4 所示的 XML 文档。 清单 4. 结果 XML 文档 <?xml version="1.0" encoding="UTF-16"?> <Patients> <Patient>John</Patient> </Patients> 现在您看到使用 DB2 原生存储 XML 是多么简单,但是在 XForms 使用的 XML 和 DB2 中的 XML 之间还需要点什么。我们将使用 Ruby。 Rails 和 DB2 现在需要考 虑如何将 XForms 前端和 DB2 pureXML 后端连接在一起了。Ruby on Rails 为快速便捷地创建 Web 应用 程序提供了一种强大的方法。而且处理数据库也很方便,但是 Rails 能用于 DB2 尤其是 DB2 pureXML 吗?当然可以,而且和 Rails 的其他方面一样,惊人的简单。 使用XForms 和 Ruby on Rails开发小型门诊管理系统,第1部分(6)时间:2011-11-29 ibm Michael Galpin为 Ruby 安装 DB2 驱动程序 首先需要启动 Rails 中的 DB2 支持。如果已经安装了 Rails,还需要安装 Ruby Gems。否则应 该安装它,因为这个包管理系统非常适合为 Rails 增加新的功能,如 DB2 支持。安装之后在命令提示符 下输入:>gem install ibm_db。 从而下载 DB2 Ruby 驱动程序。安装完成后,所有的 Ruby 应用程序(不仅仅是 Rails 应用程序)都有了 DB2 支持。如果使用的是 Windows,就会提示选择什么版 本的驱动程序,如清单 5 所示。 清单 5. 选择 DB2 驱动程序 >gem install ibm_db Bulk updating Gem source index for: http://gems.rubyforge.org Select which gem to install for your platform (i386-mswin32) 1. ibm_db 0.6.0 (mswin32) 2. ibm_db 0.6.0 (ruby) 3. ibm_db 0.4.6 (ruby) 4. ibm_db 0.4.6 (mswin32) 5. Skip this gem 6. Cancel installation 需要选择最新版本的驱动程序,因此选择 #1 或 #2。如果使用 Windows 安装程序安装了 Ruby,需要选择 #1。现在就可以创建使用 DB2 pureXML 的 Rails 应用程序了 。 创建 Rails 应用程序 Rails 开发人员应该熟悉下面的代码。我们将创建清单 6 所示的 应用程序。 清单 6. 创建 Rails 应用程序 >rails xmlmd create create app/controllers create app/helpers create app/models create app/views/layouts create config/environments create components create db create doc create lib create lib/tasks create log create public/images create public/jav |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |