Thomas Koch wrote: > Hi Peter, > > Hi Thomas > I've had the issue with uppercase myself once and it is since then > documented at: > > http://ezcomponents.org/docs/tutorials/Database#restrictions > > The import code is at > Database/handler.php, line 91: > $this->setAttribute( PDO::ATTR_CASE, PDO::CASE_LOWER ); > > This means, that all identifiers needs to be lower case. This is > enforced to keep code compatibility across all supported databases. > > Indeed my problem seems to be more related to quoting. Suppose I have a table like
CREATE TABLE LANGUAGE ( LANG_ID CHAR(2 BYTE) NOT NULL ENABLE, LANG_NAME_EN VARCHAR2(80 BYTE), CONSTRAINT "LANGUAGE_PKEY" PRIMARY KEY ("LANG_ID") ) If I do: -- $query = $dbh->createSelectQuery(); $query->select($dbh->quoteIdentifier('lang_id'), $dbh->quoteIdentifier('lang_name_id')) ->from($dbh->quoteIdentifier('language')); $stat = $query->prepare(); -- I get an error about " ORA-00942: table or view does not exist". If I remove the quoteIdentifier methods: -- $query = $dbh->createSelectQuery(); $query->select('lang_id', 'lang_name_en') ->from('language'); $stat = $query->prepare(); -- everything is fine. Now my question is: In order to have as few problems as possible, should I keep all database objects in lower case or is there a setting in db that is "smarter", e.g. transforms the object identifiers into the database native case? Regards, Peter > I'm sorry, but I've no idea about the second issue. Wait a bit if the eZ > guys will answer you. > > Cheers, Thomas Koch > > > > Am Friday 27 February 2009 19:02:31 schrieb Peter Hopfgartner: > >> Dear ezComnuity, >> >> I would like to use the Tree functionality for a database located in a >> Oracle database. Unfortunatly I hava a couple of problems, that may be >> caused by the fact that >> >> * I'm new to ezComponents >> * I'm new to Oracle >> >> I defined the table as >> >> CREATE TABLE taxonomy >> ( >> id NUMBER PRIMARY KEY, >> parent_id NUMBER , >> path VARCHAR2(255) >> ); >> >> Since Oracle defaults to UPPER CASE, the name of the table is "TAXONOMY". >> >> When I try to use ezcTreeMaterializedPath, I see that would like to run >> a query like <INSERT INTO "taxonomy" ( path ) VALUES ( 0 )>. Since the >> table name is quoted, Oracle does searches for a table called >> "taxonomy", not "TAXONOMY". So my question is: what are the >> convenctions when using ez Componets on Oracle? Should all table names >> turned to lower case? Is there a database setting, which basically tells >> Oracle to not care about case sensitivity? Or even better, a parameter >> within ez, like the option "auto_quote" in PEAR::MDB2, so that names are >> not quoted. >> >> Out of curiosity, I tried to create a new table named "taxonomy". The >> next stop arrived with a flashing message like "driver does not >> support lastInsertId()". Is this fixable? Should I have a look at it? >> Obviously, as a workaroud I may chose to create the id myself and turn >> $tree->autoId = false; This works! >> >> Regards, >> >> Peter >> >> -- >> >> Dott. Peter Hopfgartner >> >> R3 GIS Srl - GmbH >> Via Johann Kravogl-Str. 2 >> I-39012 Meran/Merano (BZ) >> Email: peter.hopfgart...@r3-gis.com >> Tel. : +39 0473 494949 >> Fax : +39 0473 069902 >> www : http://www.r3-gis.com >> > > > -- Dott. Peter Hopfgartner R3 GIS Srl - GmbH Via Johann Kravogl-Str. 2 I-39012 Meran/Merano (BZ) Email: peter.hopfgart...@r3-gis.com Tel. : +39 0473 494949 Fax : +39 0473 069902 www : http://www.r3-gis.com -- Components mailing list Components@lists.ez.no http://lists.ez.no/mailman/listinfo/components