The SQL that Mondrian generates is, until now, different than the SQL that most people would write by hand. Most people don't use spaces or punctuation in table and column names, and don't enclose identifiers in quotation marks when writing SQL DDL, DML or queries. Mondrian, on the other hand, religiously quotes every identifier, whether it needs it or not.
The two styles are not compatible because on many databases (Oracle is one example) unquoted identifiers are implicitly converted to upper-case. If you use lower-case table and column names in Mondrian's schema, they will not match the upper-case identifiers created during DDL.
For instance, if you create a table in Oracle using
CREATE TABLE emp (
empno INTEGER,
ename VARCHAR2(30),
deptno INTEGER);
then Oracle creates a table called EMP with columns EMPNO, ENAME and DEPTNO. When you query it …
[Read more]