Veröffentlicht 24. August 201114 j Hi, wie kann man aus aus einem INTEGER-Wert ein String Wert machen? Wir haben die Nutzerrolle als INT in der Users-Tabelle gespeichert, jetzt möchte ich herausfinden welche Userrolle jemand hat und mir aber nicht die INTEGER sondern die STRING-Bedeutung ausgeben lassen, sowass wie SELECT name, kind FROM users wobei aber der kind nicht als INTEGER sondern als String, i.d.F. "Söldner", "Gefreiter", "Metzger", "Analphabet" ausgegeben wird.
24. August 201114 j Autor OK, habe Antwort gefunden: MySQL :: MySQL 5.1 Referenzhandbuch :: 12.2 Ablaufsteuerungsfunktionen SELECT name, CASE kind WHEN 1 THEN "Söldner" ... FROM users;
24. August 201114 j Diese Vorgehensweise eignet sich halt nur, wenn sich die verbundenen Werte nicht sehr oft verändern und/oder das ganze nicht lokalisiert werden soll... Ein besserer Ansatz wäre hierfür die Beschreibungen in eine extra Tabelle auszulagern und die beiden Tabellen über die kind-Spalte miteinander zu verbinden. Damit kann man dann z.B. auch die Beschreibungen pflegbar machen, ohne die SQL-Statements ändern zu müssen.
26. August 201114 j ich schließe mich el_pollo_diablo vollkommen an du solltest eine weitere Tabelle für diese Aufzählung verwenden, in der du dann die ID und die Bezeichnung speichern kannst eine Lokalisierung der Daten ist möglich, indem die ID zu einer zusammengesetzen ID aus den Feldern der vorherigen ID und eines Länderschlüssels umgewandelt wird
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.