Seite 1 von 1
Contenido mit anderem Datenbanksystem als MySQL
Verfasst: Fr 4. Jun 2004, 11:32
von container
Hallo,
wie kann man Contenido auf ein anderes DBMS als MySQL portieren?
Welche PHP-Klassen oder -Funktionen muessten angepasst werden?
freue mich auf hilfreiche Tipps
Verfasst: Fr 4. Jun 2004, 11:42
von Darth-Vader
an welches hast du denn dabei gedacht?
geb uns mal ein paar infos...

Verfasst: Fr 4. Jun 2004, 11:53
von emergence
beim verzeichnis conlib müsstest du ansetzen.
beim setup weiss ich es nicht.
Verfasst: Fr 4. Jun 2004, 11:59
von container
Oracle oder Interbase
Die Idee ist, Contenido an eine Interbase-DB anzubinden und dabei auch alle Contenido-Tabellen mit in die Interbase-DB zu nehmen, um z.B. direkten Zugriff auf die Kategorien zu erlangen (nicht ueber PHP sondern mittels joins und views).
Verfasst: Fr 4. Jun 2004, 12:06
von container
Verzeichnis conlib ist ein guter Tipp.
Das Setup koennte man ja von Hand machen bzw. ein bereits installiertes nachtraeglich anpassen.
Bleibt noch die Frage, ob sich alles auf conlib beschraenkt? Ist der Rest von Contenido so weit gekapselt, dass db-technisch nur auf die conlib-Dateien zugegriffen wird?
Verfasst: Fr 4. Jun 2004, 12:22
von timo
Theoretisch ja, praktisch nein, da Contenido Abfragen beinhaltet, die nur auf MySQL funktonieren (bis alles objektorientiert und damit leichter anpassbar ist, dauert es leider noch eine Weile)
Verfasst: Fr 4. Jun 2004, 12:53
von container
nicht so gut
man muesste also noch einige Abfragen umschreiben. wieviel sind das und wo stehen die? ist das ueberschaubar und mit vertretbarem aufwand zu machen?
Verfasst: Fr 4. Jun 2004, 13:02
von timo
Das ist ne gute Frage; die Abfragen erstmal zu finden ist eine Aufgabe für sich. Soweit ich weiß unterstützt z.b. Oracle keine LIMIT-Statements, und indirekte Joins über WHERE-Statements sind auch nicht möglich.
Verfasst: Fr 4. Jun 2004, 13:11
von container
danke fuer die Hinweise.
Ich denke, die Abfragen umzuschreiben sollte nicht das Problem sein.
Bleibt also fuer mich das Problem, die betreffenden Abfragen zu finden...
Verfasst: Fr 4. Jun 2004, 13:13
von kummer
aber beides lässt sich in oracle über subselects lösen. das limit zum beispiel durch die anwendung der ROWNUM-Pseudospalte.
machen lässt sich das sicher; aber da müssen einige queries neu geschrieben werden. insgesamt ist das abfragen unter oracle bequemer, aber halt nicht immer gleich wie unter mysql.
übrigens sollte man beachten, dass ein einzelner query unter oracle nicht mehr als 2000 zeichen aufweisen darf. man wird also um die variablen-bindung nicht herum kommen (ist aber letztlich sowieso besser und sicherer -> sql-injection).
gruss,
andreas
Verfasst: Fr 4. Jun 2004, 13:38
von timo
In Zukunft soll ja mehr über Objekte laufen - d.h. der Programmierer wird keine SQL-Statements mehr verwenden, sondern Objekte. Dadurch ist keine SQL-Injection mehr möglich (funktioniert heute schon über die GenericDB) und das ganze wird Portabler. Bis aber alles soweit ist, wird's leider noch eine Weile dauern.