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]