Objekt-Orientiert mit MySQL

MySQL, PostgreSQL, SQLite
krispin
Posts: 216
Joined: 2003-04-14 16:30

Objekt-Orientiert mit MySQL

Post by krispin » 2004-02-07 20:11

moin moin!

Nur mal ne Frage, rein aus Interesse, ist es irgendwie Möglich mit MySQL (4) Objekt-Orientiert zu arbeiten? Also, dass der, wenn ein Feld nicht gefüllt ist, den Inhalt irgendwo anders herbezieht?

MfG
Krispin

suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: Objekt-Orientiert mit MySQL

Post by suntzu » 2004-02-07 21:18

Hi,

ich verstehe jetzt nicht ganz, was das mit Objektorientierung zu tun hat.

Wenn ein Feld nicht gefüllt ist, also den Wert NULL oder '' hat, dann kann man das doch abfangen.

krispin
Posts: 216
Joined: 2003-04-14 16:30

Re: Objekt-Orientiert mit MySQL

Post by krispin » 2004-02-07 23:44

du musst aber erst in deinem Script/Programm zurück, gucken, ob das Feld "Null" ist, wenn ja, eine Erneute Abfrage machen. Kann man sowas nicht innerhalb einer Abfrage regeln, oder geht das mit MySQL schlicht und einfach nicht?


MfG
Krispin

suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: Objekt-Orientiert mit MySQL

Post by suntzu » 2004-02-07 23:54

Ahso, so langsam weiß ich, worauf du hinaus willst.
Wenn du es mit den normalen SELECTs nicht hinkriegst, probier evtl. mal das hier:
http://www.mysql.com/documentation/mysq ... Constructs
http://www.mysql.com/documentation/mysq ... _functions

krispin
Posts: 216
Joined: 2003-04-14 16:30

Re: Objekt-Orientiert mit MySQL

Post by krispin » 2004-02-08 02:30

hey hey, MySQL iss ja mächtiger als ich Dachte! :)
Ok, vielen Dank! Das bringt mich um einiges Weiter!


MfG
Krispin

majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09

Re: Objekt-Orientiert mit MySQL

Post by majortermi » 2004-02-08 10:42

krispin wrote:hey hey, MySQL iss ja mächtiger als ich Dachte! :)
Du solltest allerdings beachten:
Stored procedures and functions are a new feature in MySQL version 5.0.
MySQL 5.0 ist momentan für den Produktiv-Einsatz noch nicht geeignet, da diese Version erst "Alpha" ist. Du könntest aber auf eine andere Datenbank ausweichen, die schon lange Stored Procedures unterstützt (z.B. PostgreSQL).
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...

krispin
Posts: 216
Joined: 2003-04-14 16:30

Re: Objekt-Orientiert mit MySQL

Post by krispin » 2004-02-08 17:19

ahja, wie kommen die nu eigendlich schon auf Version 5, wenn gerade mal 4 einigermaßen stabiel läuft?

Naja, auf ne andere Datebank umsteigen, möchte ich weniger. Dann werde ich wohl noch nen bisschen warten müssen.

MfG
Krispin

majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09

Re: Objekt-Orientiert mit MySQL

Post by majortermi » 2004-02-09 19:03

Die Dokumentation bezieht sich immer auf die aktuellste, verfügbare Version (nicht notwendigerweise die Stable). Deshalb steht auch immer dabei, ab welcher Version ein bestimmtes Feature nutzbar ist.

Ich muss zugeben, dass einen das manchmal etwas durcheinanderbringen kann. Heute erst ist es mir passiert, dass ich mich gewundert habe, warum ein Query mit einer Funktion nicht funktioniert, bis ich festgestellt habe, dass diese Funktion erst aber Version 4.1 verfügbar ist.

Wie dem auch sei, nach dem aktuellen Zeitplan soll MySQL 5.0 noch Ende diesen Jahres erscheinen - Version 4.1 sollte eigentlich demnächst Stable werden.

Wirklich gespannt bin ich auf Version 5.1, damit soll dann nämlich komplette SQL-99 Konformatität erreicht werden.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...

kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: Objekt-Orientiert mit MySQL

Post by kase » 2004-02-09 19:35

Mom ist 4.1.1 alpha, und nicht 5.0.

4.1 sollte man IMHO gar nicht verwenden, weil es von 4.1.1 überholt ist, neuste PHP Snapshots zB lassen sich gar nicht mehr mit PHP 4.1.0 installieren.

Und zum Thema Features: Ist echt genial, wie das Development mom bei mySQL voranschreitet. Bereits die Produktion-Serie 4.0.17 unterstützt wichtige Features wie Transaktionen und Unions usw. Mit 4.1.1 kommt dann, wohl sehr bald stable, noch das wohl wichtigste Feature der Subquerys, Subselects hinzu.

Was nun genau bei mySQL 5 bzw sogar 5.1 dabei sein wird, kann man noch nicht 100 % sagen, denke ich, aber mySQL Version 5 wird vermutlich eh noch eine ganze Weile brauchen, und ich halte es sogar auf einem Test-Server fatal zu benutzen...

majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09

Re: Objekt-Orientiert mit MySQL

Post by majortermi » 2004-02-09 19:45

kase wrote:Mom ist 4.1.1 alpha, und nicht 5.0.
Da hast du natürlich recht. 5.0 ist die Development-Version, noch keine Alpha.
4.1 sollte man IMHO gar nicht verwenden, weil es von 4.1.1 überholt ist
Ich habe ja auch von 4.1 und nicht von 4.1.0 gesprochen. 4.1 schließt 4.1.1 mit ein.
Bereits die Produktion-Serie 4.0.17 unterstützt wichtige Features wie Transaktionen und Unions usw.
Transaktionen sind bereits in 3.23.?? möglich (ich weiß jetzt nicht genau, was für ?? stehen muss). Sowohl in 4.0 als auch in 3.23 funktionieren Transkationen allerdings nur mit InnoDB oder BDB.
Was nun genau bei mySQL 5 bzw sogar 5.1 dabei sein wird, kann man noch nicht 100 % sagen, denke ich, aber mySQL Version 5 wird vermutlich eh noch eine ganze Weile brauchen, und ich halte es sogar auf einem Test-Server fatal zu benutzen...
Es gibt von MySQL AB, die die Entwicklung von MySQL ja koordinieren, schon sehr konkrete Aussagen bezüglich der Features und Erscheinungstermine. MySQL 5.0 wird als wichtigstes Feature endlich Stored Procedures unterstützen.

Informationen dazu, welches Feature ab welcher Version verfügbar ist bzw. sein wird, lassen sich unter http://www.mysql.com/doc/en/Roadmap.html finden.

Diesem Dokument zufolge werden die wichtigsten Features von 5.1 gegenüber 5.0 die Unterstützung von Triggers und evtl. Views sein.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...

kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: Objekt-Orientiert mit MySQL

Post by kase » 2004-02-09 21:10

Du hattest übrigens doch Recht, 5.0 ist genauso Alpha wie 4.1.1
Both 4.1.1 and 5.0 are available now in alpha status.
Das mySQL 3 schon Transaktionen unterstützt, ist mir neu, vielleicht nur mit evtl Patches, da Transaktionstables IMHO erst mit 4.0 kamen. zB die ganzen InnoDB Settings, da is bei meiner mysql 3er Version nix von in der Config...

Außerdem hatte ich mal gelesen, dass mySQL _niemals_ vor hatte, Triggers zu unterstützen, da es durch auto_increment laut mysql AB nicht nötig ist, vielleicht sind das nur irgendwelche "virtuellen" Trigger wegen der SQL-Norm. Falls du da irgendwelche Infos hast, dass mySQL 5.1 wirklich echte Trigger unterstützt, könntest du mir da mal Infos zukommen lassen ?