WEB开发网
开发学院数据库DB2 DB2 9.7 对分区表进行全文本搜索 阅读

DB2 9.7 对分区表进行全文本搜索

 2010-02-04 00:00:00 来源:WEB开发网   
核心提示: db2text"updateindexpart.multiindfortext"CTE0001Operationcompletedsuccessfully.db2"select*frompart.multipartwherecontains(comment,'

  
 db2text "update index part.multiind for text" 
 CTE0001 Operation completed successfully. 
    
 db2 "select * from part.multipart where contains(comment, '\"blue\"')=1" 
    
 PK YEAR VALUE COMMENT 
 ----------- ----------- ----------- ------------ 
 1 2001 1 blue and grey 
 3 2002 1 red checkered with blue 
    
    
 2 record(s) selected. 

对分区表进行插入、修改和删除操作

上文中提到,对分区表的修改操作将被记录在主日志表中,插入和删除操作将被记录在辅助日志表中。而对于普通表(非分区表)来说,所有的变化(插入,修改,删除)都是记录在同一个日志表中。接下来我们对分区表上的特点进行分析,而对于普通表上的情况请读者自行实践和比较。

对表 part.multipart 执行若干插入、删除和修改操作,如清单 8 所示,其中新插入的数据的 pk 分别为 6,7,8,删除了 pk=3 的记录,并修改了 pk=5 的记录。在更新文本索引之前对该表进行文本搜索,被删除的记录(pk=3)已经不再查询结果中,但是对于更新和新插入的数据,通过文本索引无法搜索到这些数据,也就是说文本索引还没有捕捉到这些变化。

清单 8. 插入若干新数据

  
 db2 "insert into part.multipart values 
 (6, 2001, 1, 'new blue and grey'), 
 (7,2001, 1, 'new yellow or red'), 
 (8,2002, 1, 'new red checkered with blue') " 
 db2 "delete from part.multipart where pk=3" 
 db2 "update part.multipart set comment='update 
 grey or green' where pk=5" 
    
 PK YEAR VALUE COMMENT 
    
 ----------- ----------- ----------- ------------ 
 1 2001 1 blue and grey 
 
 2 2001 1 yellow or red 
 4 2002 1 white and black 
 
 5 2003 1 update grey or green 
 6 2001 1 new blue and grey 
 
 7 2001 1 new yellow or red 
 
 8 2002 1 new red checkered with blue 
 
 
 7 record(s) selected. 
    
//在更新文本索引之前,进行文本搜索: 
    
 db2 "select * from part.multipart where contains(comment, '\"blue\"')=1" 
    
 PK YEAR VALUE COMMENT 
    
 ----------- ----------- ----------- ------------ 
 1 2001 1 blue and grey 
 
 
 1 record(s) selected. 
    
 db2 "select * from part.multipart where contains(comment, '\"new\"')=1" 
    
 PK YEAR VALUE COMMENT 
    
 ----------- ----------- ----------- ------------ 
    
 0 record(s) selected. 
    
 bash-3.1$ db2 "select * from part.multipart where contains(comment, '\"update\"')=1" 
    
 PK YEAR VALUE COMMENT 
    
 ----------- ----------- ----------- ------------ 
    
 0 record(s) selected. 

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

Tags:DB 分区表 进行

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