文档解释
ORA-55442: a virtual model cannot be used with other models in a SEM_MATCH query
Cause: The set of models used as input to a SEM_MATCH query contained a virtual model.
Action: Create a new virtual model with contents that are equivalent to the specified SEM_MATCH model set and query the new virtual model.
ORA-55442: a virtual model cannot be used with other models in a SEM_MATCH query
这个错误表明在使用SEM_MATCH非只读函数查询时,virtual model (虚拟模型)不能与其他模型一起使用。Virtual model不支持增强搜索性能。
官方解释
SEM_MATCH查询有两个模式:只读模式(只接受一个virtual模型)和可更新模式(最多接受一个virtual模型和其他模型)。
在可更新模式下,如果给定virtual模型(虚拟模型)并尝试更新模型,则会出现ORA-55442错误。
常见案例
在SEM_MATCH查询中指定多个model,其中包含一个virtual model时就会出现ORA-55442错误。
一般处理方法及步骤
1. 确认SEM_MATCH查询所使用的模式是否正确,可更新模式时不能指定virtual model(虚拟模型);
2. 确认指定的model是否正确,如果使用可更新模式时,virtual model必须省略;
3. 查阅文档了解virtual model的工作原理,并避免把它放在可更新模式的SEM_MATCH非只读查询中。