Attribute werden mit Unterstrich in eine MySQL Datenbank eingetragen

Avalon

Bekanntes Mitglied
Hallo, ich habe eine Spring Boot Anwendung gebaut. Als blutiger Anfänger nach einem Tutorial in Youtube. Funktioniert auch alles soweit. Dabei wird eine Tabelle in einer MySQL Datenbank angelegt. Folgendes Problem: Ich habe z.B in einer Klasse Patient das Attribut "nachName" entsprechend lowerCamelCase Konvention bei Variablen in Java. Wenn ich damit die Tabelle von der Anwendung anlegen lasse, wird das Attribut "nachName" in der Klasse zum Spaltennamen "nach_name" in der Tabelle. Irgendwo wird der Großbuchstabe konvertiert zu einem Unterstrich gefolgt von einem Kleinbuchstaben. Das ist zwar eher ein kosmetisches Problem, denn wenn ich der Klasse als Attribut "nachname" verwende, wird auch "nachname" in die Datenbank eingetragen. Das entspricht aber dann nicht den Konventionen. Hat da jemand Erfahrung mit Eclipse, Spring Boot, JPA, Hibernate und MySQL Connect (alles als Maven Projekt)? Kennt jemand das Problem? Reicht die Beschreibung? Oder werden noch Code und Bilderchen benötigt?
 
Das ist das Standardverhalten von Hibernate mir Spring Boot, man kann auch andere auswählen, oder aber über die Annotation den Namen selbst setzen.

Grund dürfte sein, dass die meisten DBs defaulmäßig case-insensitive sind, und ein Unterstrich als Trenner deshalb sinnvoller ist.
 
Super. Ich wusste nicht, das man den Namen per Annotation selber setzen kann. Probier ich gleich mal aus. Danke!!!
 
Ich finde aber NachName auch in Java Falsch, den der Begriff heißt "Nachname" Camel Case sollte man nur verwenden, wenn man zwei Wörter zusammenschreibt, die eigenständig sind.
 
Ich finde aber NachName auch in Java Falsch, den der Begriff heißt "Nachname" Camel Case sollte man nur verwenden, wenn man zwei Wörter zusammenschreibt, die eigenständig sind.
Das ist richtig. Es ist ein Begriff. Da stimme ich zu. Aber nicht ein Wort. Nachname setzt sich aus zwei Wörtern zusammen. Nach und Name. Demnach sollte nachName richtig sein.
 
Aber nicht ein Wort. Nachname setzt sich aus zwei Wörtern zusammen.
Beides widerspricht sich für mich gar nicht, es ist ein Wort, welches sich aus zwei Wörten zusammensetzt. In Deutsch ist halt auch Rindfleischetikettierungsüberwachungsaufgabenübertragungsgesetz ein Wort 😛

Im englischen ist’s da oft einfacher...
 
Wenn ich mal nach der Definition von Camel Case gehe: https://en.wikipedia.org/wiki/Camel_case - heißt es, man lässt Leerzeichen, Punkte etc. weg. Eine RegeEx auf Word Boundaries würde bei Nachname ja auch nicht nach Nach und Name trennen. Dementsprechend halte ich auch in Camel Case die "formal" richtige Schreibweise für Nachname.

Allerdings stimme ich @mrBrown zu. Aus Gründen der Lesbarkeit oder Semantik muss man sich nicht sklavisch an Formalismen halten. Das wichtigste ist, dass es konsistent ist und verständlich.
 
Wenn ich mal nach der Definition von Camel Case gehe: https://en.wikipedia.org/wiki/Camel_case - heißt es, man lässt Leerzeichen, Punkte etc. weg. Eine RegeEx auf Word Boundaries würde bei Nachname ja auch nicht nach Nach und Name trennen. Dementsprechend halte ich auch in Camel Case die "formal" richtige Schreibweise für Nachname.
Der Artikel dürfte sich aber auf Englische Sprache beziehen, das Zusammensetzen von Wörtern gibts da ja so nicht. Das ist daher mMn schwierig aufs Deutsche zu übertragen, zB wäre auf Englisch "FamilyName" korrekt, auf Deutsch aber "Familienname"
 
Generell würde ich FamilyName nicht verwenden. In vielen Ländern gibt es gar keine solche strickte Unterscheidung zwischen Vor- und Nachnamen (Familiennamen). Ich würde immer mit Firstname, Secondname oder meinetwegen auch Lastname arbeiten.
 
Generell würde ich FamilyName nicht verwenden. In vielen Ländern gibt es gar keine solche strickte Unterscheidung zwischen Vor- und Nachnamen (Familiennamen). Ich würde immer mit Firstname, Secondname oder meinetwegen auch Lastname arbeiten.

Auch mit FirstName und SecondName kommt man an Grenzen, nicht überall lässt es sich in zwei Teile teilen, und mit LastName ist man wieder in dem Vor- und Nachnamen-Schema. In manchen spielt dazu noch die Reihenfolge der Bestandteile von Vor- oder Nachname eine Rolle, in manchen gibt es Vor- und Nachname, aber der Nachname steht vor dem Vornamen, SecondName bietet dazu Verwechselungsgefahr mit dem zweiten Vornamen (oder Nachnamen)...

Am einfachsten fährt man mit einfach nur "Name"...
 

Neue Themen


Zurück
Oben