On Die, Apr 18, 2000 at 10:32:44 +0200, Wolfgang Wagner wrote:
Jan Trippler wrote:
[1] Es kann keine DB geben, aus der nur gelesen wird - irgendwann müssen die Daten mal reinkommen. Mit Ausnahme von reinen Archiv-DB's (ohne Aktualisierung) wird jede DB mehr oder regelmäßig verändert. Fehlende referentielle Integrität beschert also mindestens der Aktualisierungs-SW zusätzliche Arbeit (es sei denn, die Prüfung der Konsistenz wird bereits vorher - in einer anderen OLTP-DB z. B. - erledigt). Ich hatte mit nur lesen auch nur daran gedacht, daß z.B. Apache größtenteils nur lesend zugreift und normalerweise selten komplexe UPDATEs oder INSERTs über x Tabellen gemacht werden.
Zum einen ist die Komplexität von Insert- oder Update-Kommandos völlig uninteressant: Inkonsistenz ist Inkonsistenz, egal ob es 1 oder 500 Tabellen betrifft. Wenn es sich um eine 24x7-DB handelt (das ist bei Web-DB's in der Regel der Fall), dann ist es auch egal, ob Aktualisierungen 1x pro Jahr oder 1x pro Minute passieren - ohne Transaktionssicherung und entsprechende Lock- und Isolationslevel kommt es zu Inkonsistenzen.
[2] Der Knackpunkt in Bezug auf Transaktionen steht in meiner anderen Mail.
Ja und, habe ich was anderes behauptet?
Ich wollte mich nur nicht wiederholen; IMHO bedarf es einer etwas differenzierteren Betrachtung der Anforderungen an die DB als nur der Entscheidung *Schreiben mehrere Prozesse gleichzeitig*. Wenn Du also schon fragst: Ja.
[3] Stored Procedures haben nichts mit Aktualisierungen der DB zu tun. Sie sind genauso nützlich beim Lesen von Daten, da SQL keinerlei Mittel für Programmablaufsteuerung mitbringt (if - then, do - while, for - next, ...). Du meinst wahrscheinlich Trigger - dies sind ereignisgesteuerte Prozeduren (INSERT, UPDATE, DELETE). Nö, ich weiß genau, von was ich schreibe. Waren ja auch nur als Beispiele gedacht, was MySQL fehlt. <Zitat:> ...., brauche ich auch keine Transaktionen, StoredProcedures, referentielle Integrität und all das, was in MySQL fehlt. ^^^^^^^^^^^^^^^^^ </Zitat>
Zitiere Dich bitte vollständig: <Zitat:> ... und solange nur gelesen wird aus der Datenbank, brauche ich ... <Dein Zitat> </Zitat> Da lag für mich der Schluss nahe, dass Du etwas verwechselt hast. Ich nutze nämlich Stored Procedures ziemlich häufig für reine Lese- Operationen. Jan P.S.: [1] Warum reagierst Du so aggressiv? [2] Ich habe nicht deshalb so ausführlich geantwortet, weil ich _Dich_ schulmeistern wollte, sondern weil ich den Thread nicht in für den Fragesteller (nach eigenen Aussagen SQL-Newbie) völlig unverständliches Fach-Chinesisch abgleiten lassen wollte. [3] Offensichtlich OT, es interessiert sich außer uns wohl keiner mehr dafür. --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com