Das kommt darauf an. SQL an sich ist schon immer case-insensitiv, d.h. ob man die SQL-Schlüsselwörter groß oder klein schreibt ist allein eine Frage des Geschmackes oder der Konvention. Das bin ich jetzt seit 18 Jahren so gewohnt, ich finde klein praktischer. Dennoch schreibe ich in letzter Zeit auf häufigen Wunsch eines einzelnen Kollegen in meinen dienstlichen Beispielen und Musterlösungen immer alle SQL-Schlüsselwörter groß. Ich versuche es wenigstens…

Das gilt aber nicht für die Datenbank-Objekte. Hier bestimmt die Collation, die beim Anlegen der Datenbank angegeben wurde, ob die Namen der Tabellen, Views, Procedures, User, etc. case-sensitiv oder -insensitiv sind. Wurde hier eine case-sensitive Collation angegeben, dann werden die Systemtabellen mit dieser Collation angelegt. Die Folge ist, dass alle Objektnamen exakt richtig geschrieben werden müssen.
Aber selbst wenn man eine case-insensitive Collation gewählt hat, dann ist es schlau immer auf die richtige Schreibweise zu achten, damit man die Collation später mal einfach ändern kann.

Wem das zu viel Stress ist, der kann das auch einfach ignorieren und auf die Schreibweise pfeifen. Wenn er die Collation später mal ändern will, dann muss er einfach die Datenbank mit einer case-insensitiven Collation anlegen, aber dann beim Anlegen der Tabellen für jedes einzelne String-Feld (varchar, char, text, mit und ohne n) die "richtige" case-sensitive Collation angeben. Dann sind die Systemtabellen case-insensitiv, die eigenen Tabellen hingegen case-sensitiv.

Variablen und Cursornamen sind übrigens immer case-insensitiv.

Inspiriert zu diesem Posting wurde ich durch den Beitrag von Mladen Prajdic auf seinem Weblog.