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

从 SQL 进行操作系统调用

 2009-11-20 00:00:00 来源:WEB开发网   
核心提示: 在编译并安装了包含 UDF 的共享库之后,让我们执行一些非常基本的成功和错误用例的测试:/home/stolze$echo"test">test_file/home/stolze$db2"VALUESreadFile('/home/stolze/tes

在编译并安装了包含 UDF 的共享库之后,让我们执行一些非常基本的成功和错误用例的测试:

/home/stolze $ echo "test" > test_file 
/home/stolze $ db2 "VALUES readFile( '/home/stolze/test_file' )" 
1 
-------------------------------------------------------- 
test 
 1 record(s) selected. 
  
/home/stolze $ db2 "VALUES readFile( '/home/stolze/test_file123' )" 
1 
-------------------------------------------------------- 
SQL0443N Routine "READFILE" (specific name "READFILETOCLOB") has 
returned an error SQLSTATE with diagnostic text "Could not open 
file /home/stolze/test_file123". SQLSTATE=38100 

此后,就可以在 SQL 语句中象使用其它函数一样使用这个 UDF,例如在下列 INSERT 中:

/home/stolze $ db2 "CREATE TABLE test_table ( text CLOB(2M) )" 
DB20000I The SQL statement completed successfully. 
/home/stolze $ db2 "INSERT INTO test_table VALUES ( readFile( '/home/stolze/test_file' ) )" 
DB20000I The SQL statement completed successfully. 
/home/stolze $ db2 "SELECT SUBSTR(text, 2, 3) FROM test_table" 
1 
--- 
est 
 1 record(s) selected. 

使用表函数

接下来将说明如何将具有良好定义结构的文件表示为关系表。在这种情况下,我将其作为 opaque 数据,实现了从文件内容到表的映射,而不是简单地将整个文件复制到单个 LOB 中。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:SQL 进行 操作系统

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