服务器端JavaScript提供了从网页对数据库完全的访问支持,无论你需要建立一个数据库查询引擎还是完全的数据库管理系统,你都可以通过服务器端JavaScript的LiveWire Database Service完成工作。该服务支持DB2、Informix、Oracle和Sybase等数据库的本地驱动,也包括所以支持ODBC规范的数据库。该服务支持的功能包括数据库缓冲池、传递SQL、光标和存储过程。
记住,你的服务器环境最终决定你使用的数据库类型和LiveWire Database Service的功能。因此在你开始任何基于Web的工程开始之前,都应该决定该服务是否可以工作于你的服务器环境。如果该服务不支持现有的服务器环境,你可以改变或升级你的HTTP服务器、数据库前端或ODBC组件。即使该服务可以运行,你仍需要确认它支持你需要的功能。
对数据库操作有四步基本操作:映射此数据库的结构,与数据库建立连接,处理数据库事务,最后释放连接。让我们深入地看一下。
获取数据库结构。为了从数据库中得到记录,你可能需要知道表和字段的名字。为更新数据,你需要知道可接受的数据类型,最大数据长度,该列是否接受空值及其他信息。如果你正在一个已有的数据库上工作,在你开始工作前得到这些信息比较容易。但如果你为应用程序新建立了数据库,你应该在开始编程之前建立数据库的原型。一旦数据库结构决定下来,记下相关信息,如表名、字段名、数据类型等,这将使你以后的开发工作变得简单。
建立连接。LiveWire Database Service提供两种连接数据库的方法:共享连接和连接池。一个共享连接一次仅可以被一个用户访问,其他用户在该用户使用时无法使用该连接。而对于连接池,多用户可以同时访问同一数据库。
将连接池看作一个装满访问许可卡片的坛子。当一个用户需要访问数据库时,就从坛子中取出一张卡片。当其他人需要访问该数据库时,也可以从坛子中取卡片。如果坛子中的卡片被取光,则下一个用户必须等到有卡片释放才能继续使用。
对任何一种连接方式,应用程序的性能通常依赖于数据库提供的连接。如果一个用户请求连接时没有可用连接,则该用户必须等待。正因为如此,数据库连接经常在应用程序初始化时便已经建立,而后提供给用户使用。但如果你的数据库需要有登录顺序的要求则除外,这样,你只能在需要时建立连接。比如,如果用户必须通过自己的帐号和密码登录数据库,你可以在用户第一次请求时建立连接。
处理事务。一旦建立了数据库连接,用户可以做任何经允许的事情,包括数据库的查询与修改。数据库查询可以由传递SQL语句、只读游标和存储过程完成。数据库更新修改可以通过传递SQL语句、更新游标和存储过程完成。
当你更新一个数据库时,你可能用到显式的事务控制。使用事务,你可以执行一组操作。如果操作成功,数据库即更新。而如果任何一步操作失败,数据库将恢复到原有状态。
释放连接。当用户完成事务,你需要释放该连接。释放连接并非必须。对于共享连接,你就释放了数据库对象上的锁。对于连接池,你就将该连接返回连接池,仍可被其他用户使用。
上一页 | 下一页 |
文件和邮件服务 | 访问其他语言 |