4 Replies Latest reply on Sep 2, 2009 1:06 AM by alwu-Oracle

    Error running prepared statement, ORA-20000 MDSYS.RDF_MATCH_IMPL_T


      We are trying to build a prepared statement of the following format:

      select s1, s2 from table(SEM_MATCH( *:parameter* ,
      SEM_Models('int_data_modeling'), null,
      SEM_ALIASES(SEM_ALIAS('dm','http://www.credit-suisse.com/zzzzzzzz#')), null))
      where t=(select max(t) from
      table(SEM_MATCH( '(?a <http://www.credit-suisse.com/zzzzzzzz#Timestamp> ?t)
      (?a rdf:object <http://www.credit-suisse.com/zzzzzzz#Conceptual_Model>)',
      SEM_Models('int_data_modeling'), null, null, null))) group by s1,s2 order by s1,s2

      later, we replace :parameter with the following string

      '(<http://www.credit-suisse.com/zzzzzzz/aaaa> rdf:type <http://www.credit-suisse.com/zzzzz#iiiii>)
      (?a rdf:subject <http://www.credit-suisse.com/zzzzzz/bbbbb>) (?a dm:Timestamp ?t) (?p dm:Comment ?s1)
      (<http://www.credit-suisse.com/zzzzzz/aaaa> dm:Author ?s2)'

      When we run the query as a simple one (not prepared), it works fine. However, when we executed as a prepared one, we get the following error:

      ORA-06512: at line 4
      ". ;
      MDMS0001: Generic Error "ORA-20000: RDF_MATCH Query pattern must be a non-null compile-time constant.
      ORA-06512: at "MDSYS.RDF_MATCH_IMPL_T", line 31
      ORA-06512: at line 4

      Do you know what this error mean? Is the syntax of the prepared statement correct?

      I would really appreciate your help.