Bei der Entwicklung jedes System, starten Sie am Anfang und gehen bis zum Ende durch, und es ist nicht anders als mit SQL. Die folgende Liste zeigt Ihnen, was in jeder Phase des SQL-Entwicklungslebenszyklus zu berücksichtigen:
Definition Phase: Gerade definieren das Problem zu lösen, seine Größe, und wer es wird funktionieren.
Voraussetzungen Phase: Entwickeln Sie eine detaillierte Beschreibung der genau das, was die Entwicklungsarbeit produzieren wird. Sammeln Sie alle relevanten Informationen und setzen sie in ein Anforderungsdokument (Statement of Requirements). Erhalten Client signoff.
Auswertungsphase: Bestimmen Sie genau, wie Sie die Anforderungen erfüllen wird. Welche Tools verwenden Sie? Wie werden Sie Ihre Entwicklungsteam einsetzen? Bestimmen Sie, ob der Auftrag innerhalb der Zeit und Budget machbar ist.
Design-Phase: Erstellen Sie eine Datenbank-Modell und dann eine Datenbank und Datenbank-Anwendung entwerfen, die die Bedingungen des Anforderungsdokuments erfüllen.
Implementierungsphase: Erstellen Sie die Datenbank und die Datenbank-Anwendung. Fügen Sie reichlich Dokumentation im Code und in externen Dokumenten.
Endgültige Dokumentation und Testphase: Geben Sie der Datenbank und der Anwendung ein hartes Training. Schlagen Sie das System mit allen erdenklichen Eingangsbedingung und ein paar nicht denkbar diejenigen. Versuchen Sie es zu überlasten. Sehen Sie, wo es bricht. Wenn es bricht, senden Sie es an die Implementierer zurück oder sogar an die Designer zurück. Dokumentieren Sie alles.
Erhaltungsphase: Fix latente Fehler, wie sie entstehen. Aktualisierungen und für vom Auftraggeber genannten Erweiterungen.
SQL Kriterien für Normalformen
In SQL definieren Normalformen Merkmale von relationalen Datenbanken. SQL Formen erhalten klassifiziert nach der Art von Änderungsanomalien, denen sie ausgesetzt sind. Die erste, zweite und dritte Normalform (1NF, 2NF, 3NF) dienen als Heilmittel für die drei Hauptquellen von Änderungsanomalien.
Die üblichen Formen sind in dem Sinne, verschachtelt, daß eine Tabelle, die automatisch in 2NF ist auch in 1NF. In ähnlicher Weise ist eine Tabelle, in 3NF automatisch in 2NF, und so weiter. Für die meisten praktischen Anwendungen ist eine Datenbank, in 3NF setzen ausreichend, um ein hohes Maß an Integrität zu gewährleisten. Um absolut sicher sein, seiner Integrität, müssen Sie die Datenbank in DK / NF setzen.
Die folgenden Listen legen die Kriterien für jedes Formular aus:
Erste Normalform (1NF):
Tabelle muß zweidimensional, mit Zeilen und Spalten.
Jede Zeile enthält Daten, die auf eine Sache oder einen Teil einer Sache gehört.
Jede Spalte enthält Daten für ein einzelnes Attribut der Sache beschrieben wird.
Jede Zelle (Schnittpunkt von Zeile und Spalte) der Tabelle muss einwertig sein.
Alle Einträge in einer Spalte sind von der gleichen Art sein.
Jede Spalte muss einen eindeutigen Namen haben.
Keine zwei Reihen können identisch sein.
Die Reihenfolge der Spalten und der Zeilen keine Rolle spielt.
Zweite Normalform (2NF):
Dritten Normalform (3NF):
Domain-Key-Normalform (DK / NF):
SQL-Datentypen
Je nach ihrer Geschichte, unterstützen verschiedene SQL-Implementierungen eine Vielzahl von Datentypen. Die SQL-Spezifikation erkennt neun vordefinierte allgemeine Typen, unten in den Listen angezeigt
Genaue Numerics:
GANZE ZAHL
SMALLINT
BIGINT
NUMERIC
DEZIMAL
Ungefähre Numerics:
ECHT
DOPPELTE GENAUIGKEIT
SCHWEBEN
Boolean:
Zeichenketten:
Datetime:
DATUM
ZEIT
TIMESTAMP
ZEIT MIT ZEITZONE
TIMESTAMP MIT ZEITZONE
Intervalle:
INTERVAL DAY
INTERVAL YEAR
Große Objekte:
Sammlung Arten:
Andere Arten:
Funktionen SQL-Wert
Sie verwenden SQL-Wert Ausdrücke zwei oder mehr Werte zu kombinieren. Mehrere Arten von SQL-Wert Ausdrücke existieren, Typen- In den folgenden Tabellen Strings, numerischen Werten und Datums- und Uhrzeitwerte, Funktionen zu den verschiedenen Daten entsprechen, und Wirkungen:
String WertfunktionenFunktion | Bewirken |
---|
SUBSTRING | Extrahiert einen Teilstring aus einem Quellstring |
OBERE | Wandelt eine Zeichenkette in Großbuchstaben |
NIEDRIGER | Wandelt eine Zeichenfolge in Kleinbuchstaben |
TRIMMEN | Schneidet off führende oder nachgestellte Leerzeichen |
ÜBERSETZEN | Wandelt einen Quellstring von einem Zeichensatz toanother |
KONVERTIEREN | Gleich wie UEBER. (Es wandelt eine Quelle Zeichenfolge von onecharacter Satz in einen anderen.) |
Numerische WertfunktionenFunktion | Bewirken |
---|
POSITION | Gibt die Startposition eines Zielstrings innerhalb asource Zeichenfolge |
CHARACTER_LENGTH | Gibt die Anzahl der Zeichen in einer Zeichenfolge |
OCTET_LENGTH | Gibt die Anzahl der Oktetts (Bytes) in einer Zeichenkette |
EXTRAKT | Extrahiert ein einzelnes Feld aus einem Datetime oder Intervall |
Funktionen Datetime-WertFunktion | Bewirken |
---|
AKTUELLES DATUM | Gibt das aktuelle Datum |
CURRENT_TIME (p) | Gibt die aktuelle Zeit (p) Genauigkeit von Sekunden |
CURRENT_TIMESTAMP (p) | Gibt das aktuelle Datum und die aktuelle Zeit (p) precisionof Sekunden |
SQL Set-Funktionen
Manchmal, dass Sie die Informationen aus einer SQL-Tabelle extrahieren möchten bezieht sich nicht auf einzelne Zeilen, sondern auf Gruppen von Zeilen. SQL bietet fünf Satz (oder Aggregat) Funktionen mit solchen Situationen umgehen - COUNT, MAX, MIN, SUM und AVG. Jede Funktion führt eine Aktion, die Daten aus einer Reihe von Zeilen und nicht aus einer einzigen Reihe zieht:
GRAF | Gibt die Anzahl der Zeilen in der Tabelle angegebenen |
MAX | Gibt den Maximalwert, der in der specifiedtable auftritt |
MIN | Gibt den Minimalwert, der in der specifiedtable auftritt |
SUMME | Fügt die Werte in einer bestimmten Spalte nach oben |
AVG | Gibt den Mittelwert aller Werte in der specifiedcolumn |
SQL-WHERE-Klausel Prädikate
Die WHERE-Klausel ist eine SQL-Filter, die Zeilen übergibt, der die Suchbedingung und lehnt Zeilen entsprechen, die die Bedingung nicht erfüllen. Durch die Einbeziehung von WHERE-Klauseln in SQL-SELECT-Anweisungen können Sie die Zeilen einschränken, die Sie die resultierende Tabelle platzieren in denen, die bestimmte Bedingungen erfüllen. Die folgende Tabelle listet die Prädikate für die Informationen, die Sie filtern verwenden möchten:
Vergleichsprädikate= | Gleich |
lt;> | Nicht gleich |
lt; | Weniger als |
le; | Weniger als oder gleich |
> | Größer als |
> = | Größer als oder gleich |
Andere PrädikateALLE | ZWISCHEN |
DISTINCT | VORHANDEN |
IM | MÖGEN |
SPIEL | NICHT IN |
NICHT WIE | NULL |
OVERLAPS | ÄHNLICH |
SOME ANY | EINZIGARTIG |