WEB开发网
开发学院数据库DB2 从 SQL 进行操作系统调用 阅读

从 SQL 进行操作系统调用

 2009-11-20 00:00:00 来源:WEB开发网   
核心提示:简介有时,您需要从 SQL 语句中访问操作系统功能,从 SQL 进行操作系统调用,例如,您可能希望将一些信息写到文件、与特定的进程建立通信链路或执行驻留在数据库服务器上的另一个程序,表中的行太多您可能想开始进行备份,或者您可能想使用另一个程序来执行某一任务(譬如向管理员发送电子邮件),IBM® DB2®

简介

有时,您需要从 SQL 语句中访问操作系统功能。例如,您可能希望将一些信息写到文件、与特定的进程建立通信链路或执行驻留在数据库服务器上的另一个程序。IBM® DB2® Universal Database™(UDB)的用户自定义函数(UDF)可以使您方便地完成这些任务。您可以使用各种不同的编程语言(包括 SQL、Java™ 或 C)实现 UDF。在本文中,我将用一些示例向您展示,用 C 编写的 UDF 如何在数据库服务器上被用来直接执行“外部”任务。特别地,我将向您展示如何:

访问驻留在数据库服务器上的文件

调用另一个可执行文件。

处理文件系统中文件的方法基本上有两种:从文件中读取或写入文件。在 SQL 中使用 UDF,可以轻松地完成这些任务。例如,要读取文件,您可以将该文件的名称指定为 SQL 语句中的表达式,而 UDF 可以将该文件名作为输入,并将文件的内容作为其结果返回。可以象对待 SQL 语句中的任何其它值那样对待这个结果:可以将它插入表、以结果集的形式返回给客户机或由其它函数进一步处理它。同样,通过指定文件名和字符串本身,可以从 SQL 启动将字符串写入到文件的操作。函数打开文件,写入字符串,然后返回成功或错误状态。

从 SQL 调用数据库服务器上的可执行文件或脚本可能会派上用场。例如,您可能希望根据数据库中的事件或条件启动一些任务。譬如,表中的行太多您可能想开始进行备份,或者您可能想使用另一个程序来执行某一任务(譬如向管理员发送电子邮件)。另一种可能的选择是在独立的事务中执行 SQL 脚本。

1 2 3 4 5 6  下一页

Tags:SQL 进行 操作系统

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接