Forum OpenACS Q&A: Re: Where is the table user_arguments?

Posted by Jarkko Laine on

1. The "overloading" has to be this way. It wouldn't work the other way round. An example: you use a SQL/92 outer join in a general query. This happens not work in oracle so you have to write the query using oracle's own syntax in -oracle.xql. Now if the query in curly braces (or general xql file) would override the one in oracle file, this query would never work with oracle. I.e. the query in curlies is a default query, used if nothing with that query name can be found from xql files.

So the order is: 1. rdbms specific xql, 2. generic xql, 3. curlies. Of course the normal practice nowadays is not to put anything inside the curlies, so yes, you should remove the query from the tcl file.

The example I gave is actually a bad one, since you should only use such queries in general places that really work with all (both) rdbms's. But I think it should explain the reason for the parse order.

Posted by Steve Manning on
Indeed that makes perfect sense. Thank you.