I think it's straightforward to add the offending keyword to the
reserved keyword list.
After all it should have been there all along, isn't it?

It _should_ have been there, but it never was, and it is still not there (mmbase 1.7).

By browsing though the InformixSqlHandler i noticed that the reserved keywords are not used to modify the table names.

   // Tablename, prefixed with basename and underscore
           sb.append(mmbase.getBaseName()).
                   append("_").
                   //Currently no replacement strategy is implemented for
                   //invalid tablenames.
                   //This would be useful, but requires modification to
                   //the insert/update/delete code as well.
                   //append(getAllowedValue(tableName));
                   append(tableName);

So i could add the keyword public to the reserved keyword list, but if somebody is going to 'fix' this code above we will have a problem again, because the wrong database table will be accessed. Apart from this problem i am really wondering if we actually need a reserved keyword list. Is it not possible to prefix the tablenames, fieldnames, and alias names? If this is possible i think MMBase should solve the problem and not a configuration file that was, since the beginning of mmbase, never correct.

Rob




Reply via email to