Mein Geschmack sagt mir: Hauptsächlich kleine Buchstaben. Möglicherweise ausschließlich. Aber: Große Anfangsbuchstaben oder nicht? Und bei zusammengesetzten Feldnamen: Große MittBuchstaben, oder lieber trennung_durch_underscore? Es hängt ja auch von der Sprache der Feldnamen ab, wobei Sprachen wie Schwedisch und Deutsch, die die Substantive probemlos aneinanderhaken, eher keine MittBuchstaben brauchen, dahingegen braucht Englisch die MiddleCaps schon eher.
Eine andere Überlegung: Sollte ich Feldnamen irgendwie daran erkennen, dass die im Gegensatz zu Variabelnamen immer klein anfangen?
Viele Fragen! Was ist am deutlichsten (und damit auf Dauer am effektivsten)?
Ich finde A (FeldNamen) am deutlichsten
+ KajText, Kajtext und kajtext werden zudem alle verstanden (= SchreibvaRiaTionen werden richtig interpretiert) da die wenigsten Datenbanksysteme auf Feldebene Case Sensitive sind
Ich finde B (Feldnamen) auch OK aber längere Feldnamen wie pairautoincr werden unleserlich
Ich finde C (feldnamen) kennzeichnet vielleicht Felder als Felder (und keine Variablen), und habe ich bisher lange benutzt, aber längere Feldnamen wie pairautoincr werden unleserlich
Ich finde D (feld_namen) zwar leserlich aber insofern schlecht, als das ich mich schnell zwischen pair_auto_incr und pair_autoincr vertippe
Ich finde das schreiende E (FELDNAMEN) gehört zu VERGANGENEN JAHRZEHNTEN
Sonstige Ansichten? Habe ich etwas übersehen?
A: FeldNamen
Code: Alles auswählen
CREATE TABLE kajbookrow (
Entity char(10) NOT NULL,
Period char(5) NOT NULL,
KajDate date NOT NULL,
AutoIncr int NOT NULL AUTO_INCREMENT,
PairAutoIncr int,
Account smallint,
PairAccount smallint,
Amount decimal(9,2),
KajText varchar(50),
Keyword varchar(10),
PRIMARY KEY (Entity, Period, Kajdate, AutoIncr));
Code: Alles auswählen
CREATE TABLE kajbookrow (
Entity char(10) NOT NULL,
Period char(5) NOT NULL,
Kajdate date NOT NULL,
Autoincr int NOT NULL AUTO_INCREMENT,
Pairautoincr int,
Account smallint,
Pairaccount smallint,
Amount decimal(9,2),
Kajtext varchar(50),
Keyword varchar(10),
PRIMARY KEY (Entity, Period, Kajdate, Autoincr));
Code: Alles auswählen
CREATE TABLE kajbookrow (
entity char(10) NOT NULL,
period char(5) NOT NULL,
kajdate date NOT NULL,
autoincr int NOT NULL AUTO_INCREMENT,
pairautoincr int,
account smallint,
pairaccount smallint,
amount decimal(9,2),
kajtext varchar(50),
keyword varchar(10),
PRIMARY KEY (entity, period, kajdate, autoincr));
Code: Alles auswählen
CREATE TABLE kajbookrow (
entity char(10) NOT NULL,
period char(5) NOT NULL,
kaj_date date NOT NULL,
auto_incr int NOT NULL AUTO_INCREMENT,
pair_auto_incr int,
account smallint,
pair_account smallint,
amount decimal(9,2),
kaj_text varchar(50),
keyword varchar(10),
PRIMARY KEY (entity, period, kajdate, autoincr));
Code: Alles auswählen
CREATE TABLE kajbookrow (
ENTITY char(10) NOT NULL,
PERIOD char(5) NOT NULL,
KAJDATE date NOT NULL,
AUTOINCR int NOT NULL AUTO_INCREMENT,
PAIRAUTOINCR int,
ACCOUNT smallint,
PAIRACCOUNT smallint,
AMOUNT decimal(9,2),
KAJTEXT varchar(50),
KEYWORD varchar(10),
PRIMARY KEY (ENTITY, PERIOD, KAJDATE, AUTOINCR));