Philosophie oder Zukunft: sql/xml

Steglich

Aktives Mitglied
Thread Starter
Dabei seit
30.05.2003
Beiträge
206
Reaktionspunkte
0
Ausnahmsweise mal keine rein technische Frage, sondern eine Diskussion um grundsätzliche Gestaltung von Datenbanken:

Eine Website soll auf ein Redaktionssystem umgestaltet werden und vorab muss ich nun einige Überlegungen anstellen auf welches Grundgerüst ich das ganze stellen soll. Die Artikel sollen sich in einer Datenbank befinden. Sie beinhalten neben Text (Überschriften, Teaser, Kurzbeschreibung, Inhalt, Autor) auch Bilder, die natürlich passend zum Text platziert werden sollen. Die Artikel sollen zunächst einmal nur von mir verwaltet werden, aber eventuell sollen in ferner Zukunft irgendwann einmal auch andere Autoren Artikel einstellen können. Das Layout der Seite soll über CSS gestaltet sein und sich so unabhängig vom Inhalt auch veränderbar sein.

Meine Frage nun: Welche Datenbankart für die Artikel ist die bessere Lösung: SQL oder XML?

Sicherlich werden einige, da sie aus der SQL Ecke kommen, ganz klar dieser Lösung den Vorzug geben, aber ich denke da halt auch an die Aufbereitung der Artikel als PDF, damit man sich diese dann auch herunterladen und ausdrucken kann, und vielleicht geht das mit XML besser?
 
hallo

Eine Website soll auf ein Redaktionssystem umgestaltet werden und vorab muss ich nun einige Überlegungen anstellen auf welches Grundgerüst ich das ganze stellen soll.

eine möglichkeit ist sich anzuschauen wie andere so etwas gelöst haben. schau dir einfach den quellcode von verschieden anbietern mal an (z.B. phpNuke) und treffe deine entscheidung...


Die Artikel sollen sich in einer Datenbank befinden. Sie beinhalten neben Text (Überschriften, Teaser, Kurzbeschreibung, Inhalt, Autor) auch Bilder, die natürlich passend zum Text platziert werden sollen. Die Artikel sollen zunächst einmal nur von mir verwaltet werden, aber eventuell sollen in ferner Zukunft irgendwann einmal auch andere Autoren Artikel einstellen können. Das Layout der Seite soll über CSS gestaltet sein und sich so unabhängig vom Inhalt auch veränderbar sein.

aus meiner sicht schreit solch ein projekt nach eine datenbank (...aber es gibt kaum gründe BILDER in die datenbank zu speisen) undzwar unabhängig davon ob du zur gestalltung css benutzt oder nicht.

Meine Frage nun: Welche Datenbankart für die Artikel ist die bessere Lösung: SQL oder XML?

das lässt sich pauschal so nicht sagen da umfang und spezifikation des projektes unbekannt ist. es kommt halt auf die anforderungen darauf an... (beispielsweise sicherheit...)

Sicherlich werden einige, da sie aus der SQL Ecke kommen, ganz klar dieser Lösung den Vorzug geben, aber ich denke da halt auch an die Aufbereitung der Artikel als PDF, damit man sich diese dann auch herunterladen und ausdrucken kann, und vielleicht geht das mit XML besser?

gaubst du wirklich das eine pdf ausgabe aus xml einfacher ist?

ich glaube eher das die art wie man an seine daten bekommtunterschiedlich ist .... :) die ausgabe bleibt doch gleich (html,pdf) oder ;)

lg
bb
 
Es kommt natürlich darauf an, auf welchem Weg du die dynamischen PDFs generieren willst. Je nach Methode ist XML für die Weiterverarbeitung sicher einfacher. Jedoch kann aus einem relationalen Datenbanksystem auf SQL Basis auch XML Output generiert werden. Daher denke ich, bist du mit einer SQL based DB ein wenig flexibler.
 
hallo

Je nach Methode ist XML für die Weiterverarbeitung sicher einfacher.

ich wüsste es gerne wie du es meinst... bzw ein beispiel wäre nicht schlecht.

lg
bb
 
Habe leider keine aktuellen Vergleiche, aber zu Zeiten meiner Diplomarbeit (über dieses Thema, 2000) waren die RDBMS den XML-DAtenbanken (unter denen immer eine objektorientierte DB oder sogar ein RDBMS lag) wesentlich performanter.

...aber was Du machen möchtest, hört sich doch nach einem klassischen Anwendungsfall für ein CMS an?! Da hast Du auch gleich eine Benutzer- und Rechteverwaltung mit dabei.

In meinem Unternehmen haben wir genau solche Fälle wie CSS oder PDF-Generierung zur Laufzeit usw mit einem CMS gelöst.
 
Original geschrieben von bondiblue
hallo



ich wüsste es gerne wie du es meinst... bzw ein beispiel wäre nicht schlecht.

lg
bb
 

das kommt natürlich auf die eignesetzte komponente an. u.u. kann ein pdf server direkt auf den xml server zugreifen. dann braucht man nur noch eine xsl definition dazuzuhängen und daraus das pdf zu generieren. somit _kann_ es einfacher sein, muss aber nicht. wie gesagt, ich denke mit einem RDBMS bist du flexibler.
 
Ich nutze beides, jenachdem was sich gerade anbietet. Meiner Meinung nach macht es die Kombination.

Ich lese Daten aus MySQL oder PostgreSQL mittels PHP aus und erstelle dann eine XML Datei, die ich auf verschiedenste Weise nutzen kann.
Übrigens für Flash. In Actionscript habe ich mir eine Klasse gecodet, die die XML Datei parsed.

So kann man dann zb einen aktuellen Snapshot der Daten via XML für Offlinepräsentation zb auf DVD für Director verwenden.

Ein „Entweder Oder“ gibt es meiner Meinung nach nicht.


Und für dein Projekt würde ich dir ein selbstgebasteltes CMS auf PHP Basis mit MySQL Backend empfehlen.
(Alternativ vielleicht XHTML und PostgreSQL, sofern PostGreSQL auf deinem Server verfügbar ist.)

Von PHP Nuke uns so halte ich nicht sehr viel, auch wenn es mächtig ist.
Es dabei nicht darum, das Rad neu erfinden zu wollen, sondern darum, das ich hinter allem, was ich verkaufe 100% dahinterstehen möchte. Und das, was ich nicht selbstgeschrieben habe eignet sich eben dazu nicht. Meiner Meinung nach.

Was die PDF angeht… kannst du „wunderbar“ mit PHP aus den Ergenissen der SQL Query generieren.


Liebe Grüße

Yves
 
ganz deiner Meinung

Nachdem ich die ganze Woche schon mit diesem Thema beschäftigt bin, bin ich zu dem Entschluss gekommen, eine SQL Datenbank mit MySQL (genauer mit Konsole und CocoaMySQL) anzulegen und diese dann mit selbst gebasteltem php Code zu verarbeiten.

Alle anderen angeblich einfacheren Möglichkeiten mit GoLive oder SQL4X oder Zend Studio oder Dreamweaver oder gar Filemaker haben mich nicht überzeugt. Bei allen wird mir zu viel undurchschaubarer und evtl. unnötiger Code verwendet.

Bei meinem letzten Projekt, eine Website für eine Umzugsspedition, bin ich schon von den WYSIWYG Editoren abgekommen und bin damit sehr gut gefahren. So ist man gezwungen, sich intensiver mit der Materie zu beschäftigen und das ist gut so.

SubEtha hat sich hier als der beste Editor herauskristallisiert. Schön ist er auch noch. Die GUI gefällt mir zumindest viel besser als die von BBEdit. Einzig und allein ein kleines Tag Plug In, das mir die Tags auf Klick ergänzt, wäre das Sahnehäubchen.

Aus dem intensiveren Auseinandersetzen mit den Sprachen PHP und SQL erhoffe ich mir einen Gewinn für die Zuverlässigkeit des Codes und der Anwendung und ebenso die Schlankheit des Codes.
 
SubEthaEdit 2 hat AutoComplete. Dein Sahnehäubchen ist also dabei :)

Wie gesagt… wenn man selbst codet kann man voll dahinterstehen, da man hoffentlich weiß, was man macht ;)


Übrigens rate ich dir von dem Management per CocoaSQL ab.

Nimm lieber phpMyAdmin. Das ist weltweiter Standard.

Wenn du ein TerminalGeek bist kannst du es ja auch via Shell machen… ist aber auf die Dauer bequemer per GUI von phpMyAdmin.

Vorteil von phpMyAdmin ist, das es auch auf einem Webserver der nix mit Cocoa am Hut ist, läuft und nur PHP und halt die MySQL DB braucht.


Liebe Grüße

Yves
 
Quelle: www.codingmonkeys.com, feature list

Editing

(…)

Autocompletion
New!


(…)


Auch wenn nicht unbedingt notwendig… wenn du SubEthaEdit kommerziell nutzt dann investiere doch die paar Euros für eine echte Lizenz. Die Jungs leisten klasse Arbeit und sollten unterstützt werden. Und Absetzen kannst du das dann ja eh als Betriebsausgabe. Hab ich so zumindest gemacht bei der UstVa und werds auch dann bei der EkStE wie üblich machen.
 
phpMyAdmin

Habe phpMyAdmin bereits geholt, installiert und gemäß einem Tutorial auch vorbereitet, aber wie starte ich das denn?

Das mit der Unterstützung der Coding Monkeys werde ich machen.

Und das mit der automatischen Vervollstädigung muss ich gleich mal nachlesen und ausprobieren. Dein Link auf deren Seite ging leider nicht. Allerdings habe ich schon öfter festgestellt, dass die Seite nachts manchmal down ist. Werde es über Versiontracker versuchen.
 
Hi,

zur Zeit ist die Seite online. Wahrscheinlich warten die Nachts den Server gelegentlich.

phpMyAdmin startest du nicht, es ist eine Sammlung von PHP Scripts die du dorthin kopierst, wo du sonst auch deine anderen PHP Datei zum ausführen hinkopierst.

Also zb nach /Library/Webserver/Documents/


Und dann einfach über //localhost aufrufen, den phpMyAdmin Ordner anklicken und alles geht wunderbar, sofern die config.inc.php richtig konfiguriert wurde.


Ansonsten nimm diese, die am Thread anhängt. Funktioniert ;)

Passwort und so musst du dir natürlich anpassen…


Yves
 
phpMyAdmin

Danke und schon wieder was gelernt: php MyAdmin ist super.

Schon wieder eine Frage: Was passiert eigentlich mit den Umlauten in einer SQL DB?
Per CocoaMySQL habe ich Datensätze (TEXT) mit Umlauten hinzugefügt, deren Inhalt, genauer gesagt deren Umlaute werden bei phpMyAdmin aber verschlüsselt dargestellt.
Wenn ich aber bei phpMyAdmin Umlaute eingebe, dann werden die Daten bei CocoaMySQL gar nicht erst dargestellt.
 
Hi, das liegt ebenfalls an der Codierung der Texte und wie sie dann in die DB gelangen. phpMyAdmin sollte die normalerweise korrekt darstellen können, jenachdem mit welcher Codierung sie eingegeben worden sind. Probier mal oben bei Safari /View/Text Encoding UTF8 aus, bei Eingabe sowie bei Ausgabe. Bei Formularen, die Inhalte dann in die DB inserten etc. und die du selbst codest ist daher auch die Zeichencodierung im Head Bereich sehr wichtig.

Cocoa MySQL hat glaube ich keine Umlauteunterstützung implementiert, wird ja auch nicht mehr weiterentwickelt und in EN gibts nun mal keine Umlaute.


Und nun werd ich ins Bett.


Gute Nacht :)


Yves
 
YourSQL

Und was haltet ihr von YourSQL


Zumindest läuft da mit den Umlauten alles so wie bei phpMyAdmin.
 
Hallo Thomas,

ich kann Dir phpMyAdmin nur wärmstens empfehlen. Der Vorteil liegt nicht nur in dem
großartigen Funktionsumfang, sondern auch darin, dass Du damit webbasiert arbeiten
kannst - und das ortsunabhängig. Bisher kenne ich kein Tool, welches diese Maße an
Funktionen bietet. Ein weiterer Vorteil dürfte die lange Entwicklungszeit sein, die hinter
diesem Projekt steckt. Es ist nicht erst gestern rausgekommen, sondern hat sich über
mehrere Jahre entwickelt.


Edit: Die KeyBinding Funktion ist super. Einfach "F5" oder "alt + ESC" drücken und
schon kann der passende Befehl ausgewählt werden.
 
Zuletzt bearbeitet:
Zurück
Oben Unten