Linuchs: Aliase für mysql-Feldnamen in DB möglich?

Beitrag lesen

Moin,

Logisch, dass auf Feld-Ebene in neuen PHP-Programmen die alte "adress_id" nun mit "registrierte_id" angesprochen werden soll.

nein, finde ich gar nicht logisch. So wie du es darstellst, ändert sich nur der Tabellenname, das wäre vermutlich eine Zeile im Script. Warum sollten sich auch die Feldnamen noch ändern?

In vielen anderen Tabellen, z.B. Medien (Hörproben) sind die "registrierten" ja noch mit "adress_id" eingetragen. Es gibt ungezählt viele Zeilen in PHP-Programmen wie

SELECT
...
WHERE  medien.adress_id = adress.id
...

In der Tabelle medien muss das Feld "adress_id" aber in "registrierte_id" geändert werden. Wenn ich das ohne Alias mache, funktionieren die SELECTS nicht mehr.

Welchen Ausweg gibt es? Datenbanken sind so wunderbar variabel, aber hier beisst man auf Granit?

Wenn ich nun das Feld "registrierte_id_neu" hinzufügen würde, könnte ich dann wenigstens auf eine Automatik der Datenbank vertrauen, die jede Änderung im (veralteten, aber noch vorhandenen) Feld adress_id auch in registrierte_id_neu hineinschreibt?

Dieses Anliegen ist doch gar nicht abartig, auch in der PHP-Dokumentation werden bestimmte Kommandos als "veraltet" bezeichnet mit dem Hinweis, andere zu nehmen. Aber die alten gelten noch eine Weile ...

Meines Wissens nicht. Innerhalb eines SQL-Statements können Aliase vergeben werden, ...

Ist mir bekannt und nutze ich auch.

Linuchs