Benutzer-Werkzeuge

Webseiten-Werkzeuge


dev:all:examples:sql

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
dev:all:examples:sql [13.03.2017 10:18] – [INSERT / UPDATE] Manuela v.d.Deckendev:all:examples:sql [25.10.2017 11:01] – [SELECT] Manuela v.d.Decken
Zeile 9: Zeile 9:
 Das ist schon <del>fast</del> ein ganzes Kapitel für sich. Das ist schon <del>fast</del> ein ganzes Kapitel für sich.
 Also am besten erst ein mal die grundlegensten Regeln: Also am besten erst ein mal die grundlegensten Regeln:
-  * Statements dürfen nicht in der Argumentenklammer einer Funktion/Methode erstellt werden. +  * Statements **dürfen nicht** in der Argumentenklammer einer Funktion/Methode erstellt werden. 
-  * Statements müssen grundsätzlich im SQL-Strikt-Syntax aufgebaut werden +  * Statements **müssen** grundsätzlich im SQL-Strikt-Syntax aufgebaut werden 
-    * alle SQL Schlüsselwörter müssen in Großbuchstaben geschrieben werden. +    * alle SQL Schlüsselwörter **müssen** in Großbuchstaben geschrieben werden. 
-    * alle Feld- und Tabellennamen müssen in **`**Backticks**`** eingeschlossen werden. +    * alle Feld- und Tabellennamen **müssen** in **`**Backticks**`** eingeschlossen werden. 
-  * Statements dürfen nicht mit **”**text**”**, sondern ausschließlich mit **'**text**'** begrenzt werden. Wird innerhalb des Strings ein Apostroph **'** benötigt, so ist dieser mit einem Backslash **\'** zu maskieren. +  * Statements **dürfen nicht** mit **”**Anführungszeichen**”**, sondern ausschließlich mit **'**Apostroph**'** begrenzt werden. Wird innerhalb des Strings ein Apostroph **'** benötigt, so ist dieser mit einem Backslash **\'** zu maskieren. 
-SQL-Statements sollten auch optisch so aufgebaut werden, dass sie problemlos und schnell gelesen und erfasst werden können. Die zeilenweise Aufteilung nach Action-Schlüsselwörtern ist an der Stelle sehr sinnvoll. Ist eine Zeile zu lang (Codingstandards) dann mit Einrückung auf mehrere Zeilen verteilen. Bei der Feldauswahl im SELECT-Bereich ist zu beachten, dass der Server komplette Datensätze (SELECT *) in der Regel deutlich schneller liefern kann, als eine lange Auswahlliste von einzelnen Feldern.+SQL-Statements **sollten** auch optisch so aufgebaut werden, dass sie problemlos und schnell gelesen und erfasst werden können. Die zeilenweise Aufteilung nach Action-Schlüsselwörtern ist an der Stelle sehr sinnvoll. Ist eine Zeile zu lang (Codingstandards) dann mit Einrückung auf mehrere Zeilen verteilen. Bei der Feldauswahl im SELECT-Bereich ist zu beachten, dass der Server komplette Datensätze (SELECT *) in der Regel deutlich schneller liefern kann, als eine lange Auswahlliste von einzelnen Feldern.
 Um den Aufbau von Statements zu demonstrieren, folgen einige Beispiele der wichtigsten Abfragetypen. Um den Aufbau von Statements zu demonstrieren, folgen einige Beispiele der wichtigsten Abfragetypen.
 ---- ----
Zeile 48: Zeile 48:
 </code>Zur Auflockerung eine kleine Quiz-Frage:\\ </code>Zur Auflockerung eine kleine Quiz-Frage:\\
 Welche Beispiele lassen sich leichter lesen, verstehen und bei Bedarf auch leichter ändern? **1**&**2**  oder **3**&**4** ?? Welche Beispiele lassen sich leichter lesen, verstehen und bei Bedarf auch leichter ändern? **1**&**2**  oder **3**&**4** ??
 +
 +Mit der WB-2.11.0 kommt noch eine Vereinfachung hinzu, die durch eine Änderung in der Tabellenstruktur erreicht wurde
 +<code php Beispiel-5.php> 
 +$sql = 'SELECT * FROM `'.$oDb->TablePrefix.'sections` '
 +     . 'WHERE `page_id`='.$iPageId.' '
 +            'AND ('.$iTimestamp.' BETWEEN `publ_start` AND `publ_end) '
 +     . 'ORDER BY `block`, `position`';
 +$oResult = $oDb->doQuery($sql);     
 +</code>
 ---- ----
  
dev/all/examples/sql.txt · Zuletzt geändert: 27.10.2017 10:16 von Manuela v.d.Decken