Überprüfen ob Spalte vorhanden ist.
Bobby
- datenbank
Moin
Wie überprüfe ich (entweder per PHP oder per Query) ob in einer MySQL-Datenbank eine bestimmte Spalte vorhanden ist und wie füge ich diese der Tabelle an, wenn die gesuchte Spalte nicht vorhanden ist.
Für Tipps wäre ich dankbar.
Gruß Bobby
Hi,
Wie überprüfe ich (entweder per PHP oder per Query) ob in einer MySQL-Datenbank eine bestimmte Spalte vorhanden ist
http://dev.mysql.com/doc/refman/4.1/en/describe.html
und wie füge ich diese der Tabelle an, wenn die gesuchte Spalte nicht vorhanden ist.
http://dev.mysql.com/doc/refman/4.1/en/alter-table.html
MfG ChrisB
Moin
http://dev.mysql.com/doc/refman/4.1/en/describe.html
http://dev.mysql.com/doc/refman/4.1/en/alter-table.html
Danke. genau das brauchte ich.
Gruß Bobby
Hello,
Für Tipps wäre ich dankbar.
einen hätte ich auf Anhieb: Wenn du nicht gerade ein Installations- oder Upgradeskript schreibst, aber trotzdem eine Spalte ergänzen musst, dann hast du einen Design-Fehler und solltest dein Vorgehen ändern.
MfG
Rouven
Moin
einen hätte ich auf Anhieb: Wenn du nicht gerade ein Installations- oder Upgradeskript schreibst, aber trotzdem eine Spalte ergänzen musst, dann hast du einen Design-Fehler und solltest dein Vorgehen ändern.
Hm... das stimmt mich nachdenklich. Ich habe es nun umgesetzt, und brauche dies für ein dynamisches Lang-Set, das vom Admin gefüllt wird. Und wenn eine Sprache hinzukommt, muss eben eine Spalte angefügt werden in der Tabelle. Ist die Herangehensweise nicht i.O.????
Gruß Bobby
yo,
Und wenn eine Sprache hinzukommt, muss eben eine Spalte angefügt werden in der Tabelle. Ist die Herangehensweise nicht i.O.????
das ist genau der grund, worauf Rouven dich aufmerksam machen wollte, dass du eher einen Fehler im Datendesign hast. Das anlegen von Spalten kannst du bei einem geeigneten Datenbankdesign verhindern. Es "riecht" nach einer n:m beziehung.
Ilja
Moin
das ist genau der grund, worauf Rouven dich aufmerksam machen wollte, dass du eher einen Fehler im Datendesign hast. Das anlegen von Spalten kannst du bei einem geeigneten Datenbankdesign verhindern. Es "riecht" nach einer n:m beziehung.
Ilja
hmmm... ja ok... Ich wollte halt nicht tausende einzelne Tabellen für jede Sprache, oder für jeden Datentyp. Ich wollte dies alles einfach in einer Tabelle stehen haben. Was ist der Nachteil dieses Vorgehens?
Ich lass mir z.B. die Reihe für Langset "EN" als Array in mein PHP-Script übergeben und verwende dies da. Wie soll ich das sonst lösen? Einzelne Tabelle für die Sprachen-definition. eigene Tabelle je Sprache?
Gruß Bobby
Hi,
Ich wollte halt nicht tausende einzelne Tabellen für jede Sprache
Sollst du ja auch nicht - bloss nicht.
Ich wollte dies alles einfach in einer Tabelle stehen haben.
Das sollst du ja auch - in einer extra Sprachtabelle.
Die koennte auf die ID einer anderen Tabelle referenzieren (also ID der "Stelle", an der der jeweilige Textteil benoetigt wird), und des weiteren ein Sprachkuerzel sowie den Text in der jweiligen Sprache enthalten.
id | textId | lang | text
1 | 4711 | de | Ich bin der Text fuer Position 4711
2 | 4711 | en | I'm the text for position 4711
...
Was ist der Nachteil dieses Vorgehens?
Na das hast du doch bereits festgestellt - dass du an der Daten*struktur* herumpfriemeln musst, wenn eine neue Sprache hinzukommt.
MfG ChrisB
Hi,
Ich [...] brauche dies für ein dynamisches Lang-Set, das vom Admin gefüllt wird. Und wenn eine Sprache hinzukommt, muss eben eine Spalte angefügt werden in der Tabelle. Ist die Herangehensweise nicht i.O.????
Was spricht denn gegen das Ablegen der Sprachversionen in einer eigenen Tabelle - mit einem Sprachschluessel als zusaetzlichem Feld?
MfG ChrisB