|
|
|
||
|
"Denken ist die schwerste Arbeit, die es gibt. SQLFehler suchen ist das Eine, Fehler beheben das Andere. Den Fehler reproduzierbar zu machen, die Fehlerursache zu lokalisieren und den Fehler endgültig auszumerzen, ohne neue einzubauen, kann durchaus sehr schwierig sein. Für das Reproduzieren des Fehlers und die Lokalisierung der Ursache ist der Zustand der Maschine ein elementarer Aspekt. Der Zustand der Software beschreibt sich aus den aktuellen Einstellungen und den dauerhaft gespeicherten Daten. Oft können Sie Fehler im Entwicklungssystem nur reproduzieren, wenn Sie exakt den gleichen Datenstand fahren wie der Kunde im Echtsystem. Aus der Differenz kann sich bereits ein Hinweis auf die Ursache ergeben. Dazu müssen Sie sehr detailliert zu Fuß in den Daten wühlen können, was eine genaue SQL-Kenntnis voraussetzt. Da Sie nicht immer den kompletten Echtdatenbestand vom Kunden bekommen dürfen und auch der Zugang zu den Echtdaten beim Kunden vor Ort oft sehr sensibel und daher äußerst kritisch ist und der Kontakt der Entwickler zu den Administratoren und Fachbereichen des Kunden wegen der oft sehr unterschiedlichen Auffassungen nicht immer einfach ist, muss hier ggf. der Consultant, DevLead (Entwicklungsleiter) oder gar der Projektleiter ran, also jemand, der mutig und bestimmt aber dennoch sensibel und rücksichtsvoll auftritt. Diese genannten Rollen schütteln aber die Anweisungen der Datenbankabfragesprache SQL oft nicht immer so locker aus dem Ärmel (und nur zu oft auch die Entwickler nicht!), so dass hier womöglich Unsicherheiten im "operativen doing" genau dann auftreten, wenn sie gerade mit beiden Armen bis zum Ellenbogen in den Daten stecken - das ist dann ungünstig! Daher liste ich hier einige wichtige und immer wieder nötige Anweisungen als Gedankenstütze (ich schaue selbst oft auf dieser Seite nach, die ich vorher woanders auf meiner Website hatte), ohne hier Grundlagen oder Details zu SQL erläutern zu wollen. Kurse, Infos und Foren gibt es dazu nämlich schon reichlich im Internet, schließlich ist SQL mit das Älteste, was wir heute in der IT haben ([L21], [L22]).
SELECT Dept, AVG(Salary) FROM tblEmployee GROUP BY Dept HAVING AVG(Salary) > 20000 ORDER BY AVG(Salary) DESC
... WHERE "condition1" AND "condition2"
UPDATE "table" SET "column1"="value1"[,"column2"="value2"...] WHERE
"column" "operator" "value"
CREATE TABLE "table" ("column1" "data type", "column2" "data type"...) Oracle-Zeugs:
DESC "table" |
|
|