Wenn Entwickler Anwendungen mit Datenbanken zu erstellen , diese in der Regel beinhalten Datenabfragen . Eine Abfrage ist eine Aussage in Programmierung oder Scripting -Code ausgeführt , entworfen, um eine wohldefinierte Menge von Daten aus einer Datenbank abzurufen . Abfragen können direkt in SQL (Structured Query Language) ausgeführt werden auf Systeme wie MySQL und Oracle, oder kann aus einem anderen Programmiersprache wie PHP oder Java ausgeführt werden. Abfragen können Sie verschiedene Details über die Daten ein Skript anfordert . Tabellen
Abfragen zeigen normalerweise eine oder mehrere Datenbanktabellen. Eine Abfrage in SQL normalerweise auch die "select" -Schlüsselwort und den Namen mindestens einer Tabelle in der Datenbank gespeichert . Der Name der Tabelle stellt die Tabelle mit den Daten benötigt , so dass, wenn dieser Name nicht enthalten ist richtig , eine Abfrage fehl. Das folgende Beispiel SQL-Abfrage versucht, Daten aus einer Tabelle mit dem Namen "Country" mit einer Spalte mit dem Namen "City" in es abzurufen :
SELECT -Stadt von Land ;
Standardmäßig werden alle Datensätze in der "City "-Spalte , die derzeit in der Tabelle gespeichert werden, aber wenn der Name der Tabelle ist beispielsweise falsch geschrieben , wird die Abfrage nichts.
Spalten
zurück < p > Abfragen die Namen der Spalten in Tabellen . Diese Spalten enthalten die erforderlichen Daten ein. Wenn die Spaltennamen falsch geschrieben sind eine Abfrage wird daher nicht in der Lage , die erforderlichen Daten zurück. Ein häufiger Fehler ist auch eine Spalte Name gültig ist , aber das wird von der falschen Tisch gebeten . Zum Beispiel bei einer Datenbank mit Tabellen mit den Namen "Customer " und " Order" mit einer Spalte namens " CustID " in der "Customer "-Tabelle und eine Spalte namens " ordID " in der " Order" Tisch, wäre die folgende Abfrage fehl:
SELECT ordID von Kunden;
die angegebene Spalte nicht in der Tabelle vorhanden angegeben , so dass die Abfrage-Ergebnis wird leer sein
Filtering
Abfragen können Daten Ergebnisse auf verschiedene Weise zu filtern. Wenn der Code erfordert nur einen Teil der Datensätze für bestimmte Spalten der Tabelle können Entwickler Schneider die Abfrage -Syntax , um diesen Abschnitt allein abzurufen. Zum Beispiel zeigt die folgende Syntax Abfrage die Datensätze mit einem bestimmten Wert in einer Datenbank Tabellenspalte :
SELECT * from kunde WHERE type = ' Unternehmen ';
Diese Abfrage Datensätze mit allen zurückkehren wird Spalten in der "Kunde" Tisch, an dem der Wert in der Spalte "Typ" mit dem angegebenen Wert von "business . " Wenn entweder die Spalte in der "where" -Klausel oder der angegebene Wert ist nicht korrekt angegeben , kann die Abfrage entweder keine Ergebnisse oder falsche Ergebnisse.
Typen
Verwendung falsche Arten kann dazu führen, SQL-Abfragen zu scheitern. Dies ist am häufigsten , wenn Klauseln wie der "where" -Konstrukt vorhanden sind. Zum Beispiel wird , wenn eine Code-Filterung Abfrageergebnis an einer Säule , die eine bestimmte Art von Wert wie numerische speichert , aber eine Abfrage "wo" -Klausel gibt einen Wert als Text -String-Typ , die Abfrage fehlschlagen. Es ist üblich , um Nachrichten , die einen "type mismatch" in solchen Fällen erhalten .
Quotes
Einfache und doppelte Anführungszeichen erscheinen oft im Abfrage-Syntax . Zum Beispiel ist es üblich, um SQL-Abfragen in anderen Script-Programmierung in Sprachen wie PHP gehören . Das folgende Beispiel PHP Auszug erstellt eine Variable , um eine SQL -Abfrage mit einer Filterung Klausel drin modellieren :
$ query = " SELECT * FROM person WHERE pName = ' Smith ' ";
Die Abfrage selbst wird innerhalb von doppelten Anführungszeichen enthalten , während der angegebene Wert für die "where" -Klausel erscheint innerhalb einfachen Anführungszeichen. Diese Art von Situation ist eine, in der es sehr häufig versehentlich verwechseln die einfache und doppelte Anführungszeichen , möglicherweise verhindert entweder das Skript oder die Abfrage von der Ausführung .