MariaDB Benutzerhandbuch
Was ist MariaDB?
MariaDB ist eine Abzweigung des MySQL Datenbankverwaltungssystem. Es wurde von seinen ursprรผnglichen Entwicklern erstellt. Dieses DBMS-Tool bietet Datenverarbeitungsfunktionen fรผr kleine und groรe Aufgaben.
MariaDB ist eine verbesserte Version von MySQL. Es verfรผgt รผber zahlreiche integrierte leistungsstarke Funktionen und viele Verbesserungen in den Bereichen Benutzerfreundlichkeit, Sicherheit und Leistung, die Sie nicht finden MySQL.
Hier sind die Funktionen von MariaDB:
- Es wird unter den Lizenzen GPL, BSD oder LGPL betrieben.
- MariaDB unterstรผtzt eine beliebte und standardmรครige Abfragesprache.
- Es verfรผgt รผber viele Speicher-Engines, darunter auch leistungsstarke, die in andere relationale Datenbankverwaltungssysteme integriert werden kรถnnen.
- Es bietet die Galera-Cluster-Technologie.
- MariaDB unterstรผtzt PHP, eine beliebte Sprache fรผr die Webentwicklung.
- MariaDB kann auf verschiedenen Betriebssystemen ausgefรผhrt werden und unterstรผtzt zahlreiche Programmiersprachen.
- MariaDB enthรคlt zusรคtzliche Befehle, die in nicht verfรผgbar sind MySQL. MySQL verfรผgt รผber Funktionen, die sich negativ auf die Leistung des DBMS auswirken. Solche Funktionen wurden in ersetzt MariaDB.
MariaDB vs MySQL
Im Folgenden sind einige wichtige Unterschiede zwischen aufgefรผhrt MariaDB vs MySQL
| Parameter | MariaDB | MySQL |
|---|---|---|
| Weitere Optionen fรผr Speicher-Engines | MariaDB verfรผgt รผber 12 neue Speicher-Engines, die Sie nicht finden werden MySQL. | Im Vergleich dazu gibt es weniger Speichermรถglichkeiten MariaDB. |
| Geschwindigkeitsverbesserungen | MariaDB zeigt eine verbesserte Geschwindigkeit im Vergleich zu MySQL. Es verfรผgt รผber zahlreiche Funktionen zur Optimierung der Geschwindigkeit. Zu diesen Funktionen gehรถren abgeleitete Ansichten/Tabellen, Unterabfragen, Ausfรผhrungskontrolle, Festplattenzugriff und Optimierersteuerung. | MySQL weist im Vergleich zu eine langsamere Geschwindigkeit auf MariaDB. Es stรผtzt sich zur Geschwindigkeitsoptimierung nur auf wenige Funktionen, beispielsweise Hash-Indizes. |
| Schnellerer Cache/Indizes | Mit der Memory-Speicher-Engine von MariaDBkann eine INSERT-Anweisung um 24 % abgeschlossen werden als im Standard MySQL. | Die Speicher-Engine von MySQL ist im Vergleich dazu langsamer MariaDB. |
| Grรถรerer und schnellerer Verbindungspool | MariaDB verfรผgt รผber einen erweiterten Thread-Pool, der schneller lรคuft und bis zu 200,000+ Verbindungen unterstรผtzt. | Der von bereitgestellte Thread-Pool MySQL kann nicht bis zu 200,000 Verbindungen pro Zeit unterstรผtzen. |
| Verbesserte Replikation | In MariaDB, kann die Replikation sicherer und schneller erfolgen. Auรerdem kรถnnen Updates im Vergleich zu herkรถmmlichen Versionen doppelt so schnell durchgefรผhrt werden MySQL. | MySQLDie Community Edition von ermรถglicht die Verbindung einer statischen Anzahl von Threads. MySQLDer Unternehmensplan von bietet Thread-Funktionen. |
| Neue Funktionen/Erweiterungen | MariaDB kommt mit neuen Funktionen und Erweiterungen, einschlieรlich der JSON-, WITH- und KILL-Anweisungen. | The new MariaDB Funktionen sind in nicht vorgesehen MySQL. |
| Fehlende Funktionen | MariaDB Es fehlen einige der von der bereitgestellten Funktionen MySQL Enterprise Edition. Um dies zu beheben, bietet es alternative Open-Source-Plugins an. Somit, MariaDB Benutzer kรถnnen die gleichen Funktionen nutzen wie MySQL Benutzer der Enterprise Edition. | Die Enterprise Edition von MySQL verwendet einen proprietรคren Code. Nur Benutzer von MySQL Enterprise Edition haben Zugriff darauf. |
Wie installiert man MariaDB
Als eigenstรคndige Anwendung installieren
Zu verwenden, um MariaDB, mรผssen Sie es auf Ihrem Computer installieren.
Die Installation kann mit den folgenden Schritten durchgefรผhrt werden:
Schritt 1) รffnen Sie die folgende URL
Laden Sie die Installationsdatei รผber den Link herunter https://downloads.mariadb.org/
Schritt 2) Double Klicken Sie auf die Datei, um die Installation zu starten
Sobald der Download abgeschlossen ist, รถffnen Sie die Datei
Schritt 3) Klicken Sie auf die Schaltflรคche Weiter
Klicken Sie im daraufhin angezeigten Fenster auf die Schaltflรคche โWeiterโ:
Schritt 4) Akzeptieren Sie die Lizenzvereinbarung
Klicken Sie dann auf die Schaltflรคche Weiter:
Schritt 5) Wรคhlen MariaDB Server
Wรคhlen Sie die zu installierenden Funktionen aus und klicken Sie auf โWeiterโ.
Schritt 6) Geben Sie das Passwort ein
Im nรคchsten Fenster werden Sie aufgefordert, das Passwort fรผr den Root-Benutzer zu รคndern.
- Geben Sie das Passwort ein und bestรคtigen Sie es, indem Sie das gleiche Passwort noch einmal eingeben. Wenn Sie den Zugriff von Remote-Rechnern erlauben mรถchten, aktivieren Sie das entsprechende Kontrollkรคstchen.
- Wenn Sie fertig sind, klicken Sie auf die Schaltflรคche Weiter.
Schritt 7) Geben Sie den Namen ein und wรคhlen Sie die Portnummer
Geben Sie im nรคchsten Fenster einen Namen fรผr die Instanz ein, wรคhlen Sie die Portnummer und legen Sie die erforderliche Grรถรe fest. Klicken Sie auf die Schaltflรคche Weiter:
Schritt 8) Klicken Sie auf Weiter
Klicken Sie im nรคchsten Fenster einfach auf die Schaltflรคche Weiter.
Schritt 9) Klicken Sie auf Installieren
Starten Sie die Installation, indem Sie auf die Schaltflรคche โInstallierenโ klicken.
Schritt 10) Ein Fortschrittsbalken wird angezeigt
Ein Fortschrittsbalken zeigt den Fortschritt der Installation an:
Schritt 11) Klicken Sie auf die Schaltflรคche โFertig stellenโ.
Sobald die Installation abgeschlossen ist, wird die Schaltflรคche โFertig stellenโ angezeigt. Klicken Sie auf die Schaltflรคche, um das Fenster zu schlieรen:
Schritt 12) Herzlichen Glรผckwunsch!
Sie haben jetzt MariaDB auf Ihrem Computer installiert.
Arbeiten mit der Eingabeaufforderung
Jetzt haben Sie MariaDB Wenn das Programm auf Ihrem Computer installiert ist, ist es an der Zeit, es zu starten und zu verwenden. Dies kann รผber erfolgen MariaDB Eingabeaufforderung.
Befolgen Sie die folgenden Schritte:
Schritt 1) Klicken Sie auf โStartโ, wรคhlen Sie โAlle Programmeโ und klicken Sie dann auf MariaDB...
Schritt 2) Wรคhle ein MariaDB Command Prompt.
Schritt 3) Die MariaDB Die Eingabeaufforderung wird gestartet. Jetzt ist es an der Zeit, sich anzumelden. Sie sollten sich als Root-Benutzer und mit dem Passwort anmelden, das Sie bei der Installation von festgelegt haben MariaDB. Geben Sie in der Eingabeaufforderung den folgenden Befehl ein:
MySQL -u root -p
Schritt 4) Geben Sie das Passwort ein und drรผcken Sie die Eingabetaste. Sie sollten wie unten gezeigt angemeldet sein:
Sie sind jetzt angemeldet MariaDB.
Datentypen
MariaDB unterstรผtzt die folgenden Datentypen:
- String-Datentypen
- Numerische Datentypen
- Datentypen fรผr Datum/Uhrzeit
- Groรe Objektdatentypen
String-Datentypen
Dazu gehรถren folgende:
| String-Datentyp | Beschreibung |
|---|---|
| char(Grรถรe) | Die Grรถรe gibt die Anzahl der zu speichernden Zeichen an. Es speichert maximal 255 Zeichen. Zeichenfolgen mit fester Lรคnge. |
| Varchar (Grรถรe) | Die Grรถรe gibt die Anzahl der zu speichernden Zeichen an. Es speichert maximal 255 Zeichen. Zeichenfolgen variabler Lรคnge. |
| Textgrรถรe) | Die Grรถรe gibt die Anzahl der zu speichernden Zeichen an. Es speichert maximal 255 Zeichen. Zeichenfolgen mit fester Lรคnge. |
| binรคr(Grรถรe) | Die Grรถรe gibt die Anzahl der zu speichernden Zeichen an. Es speichert maximal 255 Zeichen. Zeichenfolgen mit fester Grรถรe. |
Numerische Datentypen
Dazu gehรถren folgende:
| Numerische Datentypen | Beschreibung |
|---|---|
| Bit | Ein sehr kleiner ganzzahliger Wert, der tinyint(1) entspricht. Vorzeichenbehaftete Werte liegen zwischen -128 und 127. Vorzeichenlose Werte liegen zwischen 0 und 255. |
| int(m) | Ein ganzzahliger Standardwert. Vorzeichenbehaftete Werte liegen zwischen -2147483648 und 2147483647. Vorzeichenlose Werte liegen zwischen 0 und 4294967295. |
| float(m, d) | Eine Gleitkommazahl mit einfacher Genauigkeit. |
| doppelt (m, d) | Eine Gleitkommazahl mit doppelter Genauigkeit. |
| float(p) | Eine Gleitkommazahl. |
Datentypen fรผr Datum/Uhrzeit
Dazu gehรถren folgende:
| Datentyp โDatum/Uhrzeitโ. | Beschreibung |
|---|---|
| Datum | Wird im Format โjjjj-mm-ttโ angezeigt. Die Werte liegen zwischen โ1000-01-01โ und โ9999-12-31โ. |
| Datumzeit | Wird im Format โyyyy-mm-dd hh:mm:ssโ angezeigt. Die Werte liegen zwischen โ1000-01-01 00:00:00โ und โ9999-12-31 23:59:59โ. |
| Zeitstempel(m) | Angezeigt im Format โyyyy-mm-dd hh:mm:ssโ. Die Werte liegen zwischen โ1970-01-01 00:00:01โ UTC und โ2038-01-19 03:14:07โ UTC. |
| Zeit | Wird im Format โhh:mm:ssโ angezeigt. Die Werte liegen zwischen โ-838:59:59โ und โ838:59:59โ. |
Datentypen groรer Objekte (LOB)
Dazu gehรถren folgende:
| Datentyp eines groรen Objekts | Beschreibung |
|---|---|
| Tinyblob | Seine maximale Grรถรe betrรคgt 255 Byte. |
| Klecks (Grรถรe) | Die maximale Grรถรe betrรคgt 65,535 Byte. |
| mittelblob | Seine maximale Grรถรe betrรคgt 16,777,215 Byte. |
| Langtext | Die maximale Grรถรe betrรคgt 4 GB. |
Erstellen Sie eine Datenbank und Tabellen
So erstellen Sie eine neue Datenbank in MariaDB, sollten Sie รผber besondere Berechtigungen verfรผgen, die nur dem Root-Benutzer und Administratoren gewรคhrt werden.
Um eine neue Datenbank zu erstellen, sollten Sie den Befehl CREATE DATABASE verwenden, der die folgende Syntax verwendet:
CREATE DATABASE DatabaseName;
In diesem Fall mรผssen Sie eine Datenbank erstellen und ihr den Namen Demo geben.
Starte das MariaDB Eingabeaufforderung und melden Sie sich als Root-Benutzer an, indem Sie den folgenden Befehl eingeben:
mysql -u root -p
Geben Sie das Root-Passwort ein und drรผcken Sie die Eingabetaste. Sie werden eingeloggt.
Fรผhren Sie nun den folgenden Befehl aus:
CREATE DATABASE Demo;
Sie haben dann eine Datenbank mit dem Namen Demo erstellt. Sie kรถnnen nun รผberprรผfen, ob die Datenbank erfolgreich erstellt wurde oder nicht. Sie mรผssen lediglich die Liste der verfรผgbaren Datenbanken anzeigen, indem Sie den folgenden Befehl ausfรผhren:
SHOW DATABASES;
Die obige Ausgabe zeigt, dass die Demo-Datenbank Teil der Liste ist und daher erfolgreich erstellt wurde.
MariaDB Wรคhlen Sie Datenbank
Damit Sie eine bestimmte Datenbank nutzen oder bearbeiten kรถnnen, mรผssen Sie diese aus der Liste der verfรผgbaren Datenbanken auswรคhlen. Nachdem Sie eine Datenbank ausgewรคhlt haben, kรถnnen Sie Aufgaben wie das Erstellen von Tabellen innerhalb der Datenbank ausfรผhren.
Um eine Datenbank auszuwรคhlen, sollten Sie den USE-Befehl verwenden. Es benรถtigt die unten angegebene Syntax:
USE database_name;
Sie mรผssen die Demo-Datenbank verwenden. Sie kรถnnen sie auswรคhlen, indem Sie den folgenden Befehl ausfรผhren:
USE Demo;
Das obige Bild zeigt, dass die MariaDB Die Eingabeaufforderung hat sich von โKeineโ in den Namen der ausgewรคhlten Datenbank geรคndert.
Sie kรถnnen jetzt damit fortfahren und Tabellen in der Demo-Datenbank erstellen.
MariaDB - Tabelle erstellen
Damit Sie eine Tabelle erstellen kรถnnen, mรผssen Sie eine Datenbank ausgewรคhlt haben. Die Tabelle kann mit der CREATE TABLE-Anweisung erstellt werden. Hier ist die Syntax fรผr den Befehl:
CREATE TABLE tableName (columnName columnType);
Sie kรถnnen eine der Spalten als Primรคrschlรผssel festlegen. Diese Spalte sollte keine Nullwerte zulassen.
Wir werden zwei Tabellen innerhalb der Demo-Datenbank erstellen: die Tabellen โBookโ und โPriceโ. Jede Tabelle hat zwei Spalten.
Beginnen wir mit der Erstellung der Tabelle โBookโ mit zwei Spalten, โidโ und โnameโ. Fรผhren Sie den folgenden Befehl aus:
CREATE TABLE Book( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, PRIMARY KEY (id));
Die PRIMARY KEY-Einschrรคnkung wurde verwendet, um die ID-Spalte als Primรคrschlรผssel fรผr die Tabelle festzulegen. Die Eigenschaft AUTO_INCREMENT erhรถht die Werte der ID-Spalte automatisch um 1 fรผr jeden neuen Datensatz, der in die Tabelle eingefรผgt wird. In allen Spalten sind keine Nullwerte zulรคssig.
Erstellen Sie nun die zweite Tabelle, die Preistabelle:
CREATE TABLE Price( id INT NOT NULL AUTO_INCREMENT, price float NOT NULL, PRIMARY KEY (id));
Die ID-Spalte wurde als Primรคrschlรผssel fรผr die Tabelle festgelegt.
Tabellen anzeigen
Nachdem Sie nun die beiden Tabellen erstellt haben, sollten Sie รผberprรผfen, ob die Tabellen erfolgreich erstellt wurden oder nicht. Sie kรถnnen die Liste der in einer Datenbank enthaltenen Tabellen anzeigen, indem Sie den folgenden Befehl ausfรผhren:
SHOW TABLES;
Der obige Screenshot zeigt, dass die beiden Tabellen erfolgreich in der Demo-Datenbank erstellt wurden.
Tabellenstruktur anzeigen
Um die Struktur einer bestimmten Tabelle anzuzeigen, kรถnnen Sie den Befehl DESCRIBE verwenden, der hรคufig als DESC abgekรผrzt wird. Er verwendet die folgende Syntax:
DESC TableName;
Um beispielsweise die Struktur der Tabelle mit dem Namen โBuchโ anzuzeigen, kรถnnen Sie den folgenden Befehl ausfรผhren:
DESC Book;
Die Tabelle hat zwei Spalten. Um die Struktur der Preistabelle anzuzeigen, kรถnnen Sie den folgenden Befehl ausfรผhren:
DESC Price;
CRUD und Klauseln
INSERT
Um Daten in eine einzufรผgen MariaDB Um eine Tabelle zu erstellen, sollten Sie die INSERT INTO-Anweisung verwenden. Dieser Befehl hat die unten angegebene Syntax:
INSERT INTO tableName (column_1, column_2, ... ) VALUES (value1, value2, ... ), (value1, value2, ... ), ...;
Die obige Syntax zeigt, dass Sie die Tabellenspalten angeben mรผssen, in die Sie Daten einfรผgen mรถchten, sowie die Daten, die Sie einfรผgen mรผssen.
Fรผgen wir einen Datensatz in die Book-Tabelle ein:
INSERT INTO book (id, name) VALUES(1, 'MariaDB Book');
Sie haben einen einzelnen Datensatz in die Tabelle eingefรผgt. Fรผgen Sie einen Datensatz in die Preistabelle ein:
INSERT INTO price (id, price) VALUES(1, 200);
Der Datensatz wurde erstellt.
SELECT
Mithilfe der SELECT-Anweisung kรถnnen wir den Inhalt einer Datenbanktabelle anzeigen oder einsehen. Um beispielsweise den Inhalt der Tabelle Book anzuzeigen, mรผssen Sie den folgenden Befehl ausfรผhren:
SELECT * from book;
Sehen Sie sich nun den Inhalt der Preistabelle an:
SELECT * from price;
Mehrere Datensรคtze einfรผgen
Es ist uns mรถglich, mehrere Datensรคtze in eine einzufรผgen MariaDB Tabelle auf einmal. Um dies zu demonstrieren, fรผhren Sie das folgende Beispiel aus:
INSERT INTO book (id, name) VALUES (2,'MariaDB Book2'), (3,'MariaDB Book3'), (4,'MariaDB Book4'), (5,'MariaDB Book5');
Sie kรถnnen die Tabelle abfragen, um zu รผberprรผfen, ob die Datensรคtze erfolgreich eingefรผgt wurden:
SELECT * FROM book;
Die Datensรคtze wurden erfolgreich eingefรผgt. Fรผgen Sie mehrere Datensรคtze in die Preistabelle ein, indem Sie dieses Beispiel ausfรผhren:
INSERT INTO price (id, price) VALUES (2, 250), (3, 220), (4, 190), (5, 300);
Lassen Sie uns bestรคtigen, ob die Datensรคtze erfolgreich erstellt wurden:
SELECT * FROM price;
AKTUALISIEREN
Der UPDATE-Befehl hilft uns, die Datensรคtze zu รคndern oder zu modifizieren, die bereits in eine Tabelle eingefรผgt wurden. Sie kรถnnen es mit der WHERE-Klausel kombinieren, um den Datensatz anzugeben, der aktualisiert werden soll. Hier ist die Syntax:
UPDATE tableName SET field=newValue, field2=newValue2,... [WHERE ...]
Der UPDATE-Befehl kann auch mit Klauseln wie SET, WHERE, LIMIT und ORDER BY kombiniert werden. Sie werden dies in Kรผrze sehen:
Betrachten Sie die Tabelle mit dem Namen โPriceโ mit den folgenden Datensรคtzen:
รndern wir den Preis des Buches mit der ID 1 von 200 auf 250:
UPDATE price SET price = 250 WHERE id = 1;
Der Befehl wurde erfolgreich ausgefรผhrt. Sie kรถnnen nun die Tabelle abfragen, um zu sehen, ob die รnderung stattgefunden hat:
Der obige Screenshot zeigt, dass die รnderung umgesetzt wurde. Betrachten Sie die Tabelle โBookโ mit den folgenden Datensรคtzen:
รndern wir den Namen des Buches mit dem Namen โBuchโ in MariaDB Buch 1. Beachten Sie, dass das Buch die ID 1 hat. Hier ist der Befehl dafรผr:
UPDATE book SET name = โMariaDB Book1โ WHERE id = 1;
Prรผfen Sie, ob die รnderung umgesetzt wurde:
Der obige Screenshot zeigt, dass die รnderung erfolgreich implementiert wurde.
In den obigen Beispielen haben wir jeweils nur eine Spalte geรคndert. Es ist uns jedoch mรถglich, mehrere Spalten gleichzeitig zu รคndern. Lassen Sie uns dies anhand eines Beispiels demonstrieren.
Lassen Sie uns die Preistabelle mit den folgenden Daten verwenden:
Lassen Sie uns sowohl die ID als auch den Preis des Buches mit der ID 5 รคndern. Wir werden die ID auf 6 und den Preis auf 6 รคndern. Fรผhren Sie den folgenden Befehl aus:
UPDATE price SET id = 6, price = 280 WHERE id = 5;
Fragen Sie nun die Tabelle ab, um zu รผberprรผfen, ob die รnderung erfolgreich durchgefรผhrt wurde:
Die รnderung wurde erfolgreich durchgefรผhrt.
Lรถschen
Wir verwenden den DELETE-Befehl, wenn wir einen oder mehrere Datensรคtze aus einer Tabelle lรถschen mรผssen. Hier ist die Syntax fรผr den Befehl:
DELETE FROM tableName [WHERE condition(s)] [ORDER BY exp [ ASC | DESC ]] [LIMIT numberRows];
Betrachten Sie die Preistabelle mit den folgenden Datensรคtzen:
Wir mรผssen den letzten Datensatz aus der Tabelle lรถschen. Es hat eine ID von 6 und einen Preis von 280. Lรถschen wir den Datensatz:
DELETE FROM price WHERE id = 6;
Der Befehl wurde erfolgreich ausgefรผhrt. Lassen Sie uns die Tabelle abfragen, um zu bestรคtigen, ob der Lรถschvorgang erfolgreich war:
Die Ausgabe zeigt, dass der Datensatz erfolgreich gelรถscht wurde.
COHO Expo bei der
Die WHERE-Klausel hilft uns, die genaue Stelle anzugeben, an der wir eine รnderung vornehmen mรผssen. Sie wird zusammen mit Anweisungen wie INSERT, SELECT, UPDATE und DELETE verwendet. Betrachten Sie die Tabelle Price mit den folgenden Daten:
Angenommen, wir mรผssen die Datensรคtze sehen, in denen der Preis unter 250 liegt. Wir kรถnnen den folgenden Befehl ausfรผhren:
SELECT * FROM price WHERE price < 250;
Alle Datensรคtze, in denen der Preis unter 250 liegt, wurden zurรผckgegeben.
Die WHERE-Klausel kann mit der AND-Anweisung kombiniert werden. Angenommen, wir mรผssen alle Datensรคtze in der Tabelle โPreisโ sehen, bei denen der Preis unter 250 und die ID รผber 3 liegt. Wir kรถnnen den folgenden Befehl ausfรผhren:
SELECT * FROM price WHERE id > 3 AND price < 250;
Es wurde nur ein Datensatz zurรผckgegeben. Der Grund dafรผr ist, dass alle angegebenen Bedingungen erfรผllt sein mรผssen, d. h. eine ID รผber 3 und ein Preis unter 250. Wenn eine dieser Bedingungen verletzt wird, wird der Datensatz nicht zurรผckgegeben.
Die Klausel kann auch mit dem OR-Befehl kombiniert werden. Ersetzen wir das UND in unserem vorherigen Befehl durch ODER und sehen uns die Art der Ausgabe an, die wir erhalten:
SELECT * FROM price WHERE id > 3 OR price < 250;
Wir erhalten jetzt 2 Datensรคtze statt 1. Dies liegt daran, dass fรผr einen qualifizierten Datensatz nur eine der angegebenen Bedingungen erfรผllt sein muss.
Like
Diese Klausel wird verwendet, um das Datenmuster beim Zugriff auf Tabellendaten anzugeben, bei denen eine genaue รbereinstimmung erforderlich ist. Es kann mit den Anweisungen INSERT, UPDATE, SELECT und DELETE kombiniert werden.
Sie sollten das gesuchte Datenmuster an die Klausel รผbergeben, und sie gibt entweder true oder false zurรผck. Hier sind die Platzhalterzeichen, die zusammen mit der Klausel verwendet werden kรถnnen:
- %: zum Abgleichen von entweder 0 oder mehr Zeichen.
- _: zum Abgleichen eines einzelnen Zeichens.
Hier ist die Syntax fรผr die LIKE-Klausel:
SELECT field_1, field_2,... FROM tableName1, tableName2,... WHERE fieldName LIKE condition;
Lassen Sie uns demonstrieren, wie die Klausel mit dem Platzhalterzeichen % verwendet wird. Lassen Sie uns die Tabelle โBookโ mit den folgenden Datensรคtzen verwenden:
Wir mรผssen alle Datensรคtze sehen, deren Name mit M beginnt. Wir kรถnnen den folgenden Befehl ausfรผhren:
SELECT name FROM book WHERE name LIKE 'M%';
Alle Datensรคtze wurden zurรผckgegeben, da ihre Namen mit dem Buchstaben M beginnen. Um alle Namen anzuzeigen, die mit 4 enden, kรถnnen Sie den folgenden Befehl ausfรผhren:
SELECT name FROM book WHERE name LIKE '%4';
Es wurde nur ein Name zurรผckgegeben, da nur dieser die Bedingung erfรผllt.
Wir kรถnnen das Suchmuster auch mit dem Platzhalter umgeben:
SELECT name FROM book WHERE name LIKE '%DB%';
Anders als der %-Platzhalter kann die LIKE-Klausel zusammen mit dem _-Platzhalter verwendet werden. Dies ist der Unterstrich-Platzhalter und es wird nur nach einem einzelnen Zeichen gesucht.
Lassen Sie uns mit der Preistabelle mit den folgenden Datensรคtzen arbeiten:
Suchen wir nach dem Datensatz, in dem der Preis 1_0 ist. Wir fรผhren den folgenden Befehl aus:
SELECT * FROM price WHERE price LIKE '1_0';
Es wurde der Rekord zurรผckgegeben, bei dem der Preis 190 betrรคgt. Wir kรถnnen auch ein anderes Muster ausprobieren:
SELECT * FROM price WHERE price LIKE '_2_';
Es ist mรถglich, die LIKE-Klausel zusammen mit dem NOT-Operator zu verwenden. Dadurch werden alle Datensรคtze zurรผckgegeben, die dem angegebenen Muster nicht entsprechen. Beispiel:
Lassen Sie uns die Preistabelle mit den folgenden Datensรคtzen verwenden:
Lassen Sie uns alle Datensรคtze finden, bei denen der Preis nicht mit 2 beginnt:
SELECT * FROM price WHERE price NOT LIKE '2%';
Nur ein Datensatz entspricht nicht dem angegebenen Muster.
Sortieren nach
Diese Klausel hilft uns, unsere Datensรคtze entweder in aufsteigender oder absteigender Reihenfolge zu sortieren. Wir verwenden es mit der SELECT-Anweisung, wie unten gezeigt:
SELECT expression(s) FROM tables [WHERE condition(s)] ORDER BY exp [ ASC | DESC ];
Es ist uns mรถglich, diese Klausel zu verwenden, ohne den ASC- oder DESC-Teil hinzuzufรผgen. Zum Beispiel:
Wir verwenden die Preistabelle mit den folgenden Datensรคtzen:
Fรผhren Sie den folgenden Befehl fรผr die Tabelle aus:
SELECT * FROM price WHERE price LIKE '2%.' ORDER BY price;
Im obigen Befehl haben wir nach dem Preis bestellt. Die Datensรคtze sind mit den Preisen aufsteigend sortiert. Das heiรt, wenn wir keine Reihenfolge angeben, erfolgt die Sortierung standardmรครig in aufsteigender Reihenfolge.
Lassen Sie uns die Klausel mit der DESC-Option ausfรผhren:
SELECT * FROM price WHERE price LIKE '2%' ORDER BY price DESC;
Die Datensรคtze wurden wie von uns angegeben nach Preis in absteigender Reihenfolge sortiert.
Lassen Sie uns die ORDER BY-Klausel zusammen mit dem ASC-Attribut verwenden:
SELECT * FROM price WHERE price LIKE '2%.' ORDER BY price ASC;
Die Datensรคtze sind geordnet, die Preise sind jedoch aufsteigend. Dies รคhnelt der Verwendung der ORDER BY-Klausel ohne ASC- oder DESC-Attribute.
DISTINCT
Diese Klausel hilft uns, Duplikate bei der Auswahl von Datensรคtzen aus einer Tabelle zu vermeiden. Dies bedeutet, dass es uns hilft, einzigartige Datensรคtze zu erhalten. Die Syntax ist unten angegeben:
SELECT DISTINCT expression(s) FROM tableName [WHERE condition(s)];
Um dies zu demonstrieren, verwenden wir die Preistabelle mit den folgenden Daten:
Wenn wir die Spalte โPreisโ aus der Tabelle auswรคhlen, erhalten wir das folgende Ergebnis:
SELECT price FROM Price;
Wir haben zwei Datensรคtze mit einem Preis von 250, wodurch ein Duplikat erstellt wird. Wir benรถtigen nur eindeutige Datensรคtze. Wir kรถnnen diese mithilfe der DISTINCT-Klausel filtern, wie unten gezeigt:
SELECT DISTINCT price FROM Price;
Wir haben jetzt keine Duplikate in der obigen Ausgabe.
Direkt von der
Die FROM-Klausel, die zum Abrufen von Daten aus einer Datenbanktabelle verwendet wird. Es kann auch beim Zusammenfรผgen von Tabellen hilfreich sein. Hier ist die Syntax fรผr den Befehl:
SELECT columnNames FROM tableName;
Um den Inhalt der Buchtabelle anzuzeigen, fรผhren Sie den folgenden Befehl aus:
SELECT * FROM price;
Die Klausel kann Ihnen helfen, nur eine einzelne Spalte aus einer Datenbanktabelle abzurufen. Zum Beispiel:
SELECT price FROM Price;
Erweiterte Aufgaben
Gespeicherte Prozedur
Ein Verfahren ist ein MariaDB Programm, an das Sie Parameter รผbergeben kรถnnen. Eine Prozedur gibt keine Werte zurรผck. Um eine Prozedur zu erstellen, verwenden wir den Befehl CREATE PROCEDURE.
Um zu demonstrieren, wie eine Prozedur erstellt und aufgerufen wird, erstellen wir eine Prozedur namens myProcedure(), die uns bei der Auswahl der Namensspalte aus der Buchtabelle hilft. Hier ist die Vorgehensweise:
DELIMITER $
CREATE PROCEDURE myProcedure()
BEGIN
SELECT name FROM book;
END;
;
Das Verfahren wurde erstellt. Wir haben die SELECT-Anweisung einfach in die BEGIN- und END-Klauseln der Prozedur eingeschlossen.
Jetzt kรถnnen wir die Prozedur wie unten gezeigt mit ihrem Namen aufrufen:
CALL myProcedure();
Die Prozedur gibt beim Aufruf die Namensspalte der Buchtabelle zurรผck.
Wir kรถnnen eine Prozedur erstellen, die einen Parameter annimmt. Beispielsweise mรผssen wir den Namen des Buches auswรคhlen und anhand der Buch-ID filtern. Dafรผr kรถnnen wir die folgende Prozedur erstellen:
DELIMITER $
CREATE PROCEDURE myProcedure2(book_id int)
BEGIN
SELECT name FROM book WHERE id = book_id;
END;
;
Oben haben wir eine Prozedur namens myProcedure2() erstellt. Diese Prozedur benรถtigt einen ganzzahligen Parameter namens book_id, der die ID des Buches ist, dessen Namen wir sehen mรผssen. Um den Namen des Buches mit der ID 3 anzuzeigen, kรถnnen wir die Prozedur wie folgt aufrufen:
CALL myProcedure2(3);
Funktion
Im Gegensatz zu Prozeduren mรผssen wir Parameter an Funktionen รผbergeben und eine Funktion muss einen Wert zurรผckgeben. So erstellen Sie eine Funktion in MariaDBverwenden wir die Anweisung CREATE FUNCTION. Die Anweisung hat die folgende Syntax:
CREATE
[ DEFINER = { CURRENT-USER | username } ]
FUNCTION function-name [(parameter datatype [, parameter datatype]) ]
RETURNS datatype [LANGUAGE SQL
| DETERMINISTIC
| NOT DETERMINISTIC
| {CONTAINS SQL
| NO SQL
| READS SQL DATA
| MODIFIES SQL DATA}
| SQL SECURITY {DEFINER | INVOKER}
| COMMENT 'comment'
BEGIN
declaration-section
executable-section
END;
Die oben genannten Parameter werden im Folgenden beschrieben:
| Parameter | Beschreibung |
|---|---|
| DEFINER-Klausel | Dieser Parameter ist optional. Wenn Sie es nicht angeben, wird der Definierer zum Benutzer, der die Funktion erstellt hat. Wenn ein anderer Definierer angegeben werden muss, fรผgen Sie die DEFINER-Klausel ein, in der der Benutzername der Definierer der Funktion sein wird. |
| Funktionsname | Der Name, der dieser Funktion im zugewiesen werden soll MariaDB. |
| Parameter | Die an die Funktion รผbergebenen Parameter. Bei der Erstellung der Funktion werden alle Parameter als behandelt IN-Parameter (anstelle von OUT/INOUT-Parametern). |
| return_datatype | Der Datentyp des Rรผckgabewerts der Funktion. |
| SPRACHE SQL | Es beeintrรคchtigt die Tragbarkeit, jedoch nicht die Funktion. |
| DETERMINISTISCH | Die Funktion gibt nur dann ein Ergebnis zurรผck, wenn mehrere Parameter angegeben werden. |
| NICHT DETERMINISTISCH | Es ist mรถglich, dass die Funktion bei Angabe mehrerer Parameter ein anderes Ergebnis zurรผckgibt. |
| ENTHรLT SQL | Informiert MariaDB dass diese Funktion SQL enthรคlt. Die Datenbank รผberprรผft nicht, ob dies wahr ist. |
| KEIN SQL | Diese Klausel wird nicht verwendet und hat keine Auswirkungen auf Ihre Funktion. |
| Liest SQL-Daten | Tells MariaDB dass diese Funktion SELECT-Anweisungen zum Lesen von Daten verwendet, die Daten jedoch nicht รคndert. |
| รNDERT SQL-DATEN | Tells MariaDB dass diese Funktion INSERT, DELETE, UPDATE und andere verwendet DDL Anweisungen zum รndern von SQL-Daten. |
| Deklarationsabschnitt | Hier sollten lokale Variablen deklariert werden. |
| ausfรผhrbarer Abschnitt | Der Funktionscode sollte hier hinzugefรผgt werden. |
Hier ist ein Beispiel MariaDB Funktion:
DELIMITER // CREATE FUNCTION sumFunc (x INT ) RETURNS INT DETERMINISTIC BEGIN DECLARE sum INT; SET sum = 0; label1: WHILE sum <= 3000 DO SET sum = sum + x; END WHILE label1; RETURN sum; END; // DELIMITER ;
Wir kรถnnen die obige Funktion dann wie folgt aufrufen:
select sumFunc(1000);
Der Befehl gibt Folgendes zurรผck:
Wenn Sie mit einer Funktion fertig sind, kรถnnen Sie sie lรถschen. Dies ist ganz einfach, da Sie nur die Anweisung DROP FUNCTION aufrufen mรผssen, die die folgende Syntax verwendet:
DROP FUNCTION function_name;
Um beispielsweise die Funktion mit dem Namen myFunc zu lรถschen, kรถnnen wir den folgenden Befehl ausfรผhren:
DROP FUNCTION myFunc;
JOIN
Wenn Sie Daten aus mehr als einer Tabelle gleichzeitig abrufen mรผssen, verwenden Sie MariaDB VERBINDET. Das bedeutet, dass a JOIN funktioniert auf zwei oder mehr Tabellen. Die folgenden drei Arten von JOINS werden unterstรผtzt in MariaDB:
- INNERER/EINFACHER JOIN
- LINKER รUSSERER JOIN/LINKER JOIN
- RECHTER รUSSERER JOIN/RECHTER JOIN
Lassen Sie uns sie einzeln besprechen:
INNER JOIN
Der innere Join gibt alle Zeilen aus den Tabellen zurรผck, in denen die Join-Bedingung wahr ist. Seine Syntax ist wie folgt:
SELECT columns FROM table-1 INNER JOIN table-2 ON table-1.column = table-2.column;
Beispielsweise:
Wir werden unsere beiden Tische, Bรผcher und Buch, verwenden.
Die Buchtabelle enthรคlt folgende Daten:
Die Preistabelle enthรคlt die folgenden Daten:
Das Ziel besteht darin, die Namensspalte aus der Buchtabelle und die Preisspalte aus der Preistabelle in einer einzigen Tabelle zusammenzufรผhren. Dies ist mit einem Inner Join mรถglich, wie unten gezeigt:
SELECT book.name, price.price FROM book INNER JOIN price ON book.id = price.id;
Der Befehl gibt Folgendes zurรผck:
LEFT OUTER JOIN
Dieser Join gibt alle Zeilen aus der linken Tabelle und nur Zeilen aus der anderen Tabelle zurรผck, in denen die Join-Bedingung wahr ist. Seine Syntax ist wie folgt:
SELECT columns FROM table-1 LEFT [OUTER] JOIN table-2 ON table-1.column = table-2.column;
Das Schlรผsselwort OUTER wurde in eckige Klammern gesetzt, da es optional ist.
Beispielsweise:
SELECT book.name, price.price FROM book LEFT JOIN price ON book.id = price.id;
Der Befehl gibt Folgendes zurรผck:
Der letzte Datensatz in der obigen Tabelle hat links keinen passenden Wert. Deshalb wurde es durch NULL ersetzt.
RECHTER รUSSERER JOIN
Dieser Join gibt alle Zeilen aus der rechten Tabelle und nur Zeilen aus der anderen Tabelle zurรผck, in denen die Join-Bedingung wahr ist. Seine Syntax ist wie folgt:
SELECT columns FROM table-1 RIGHT [OUTER] JOIN table-2 ON table-1.column = table-2.column;
Das Schlรผsselwort OUTER wurde in eckige Klammern gesetzt, da es optional ist.
Beispielsweise:
SELECT book.name, price.price FROM book RIGHT JOIN price ON book.id = price.id;
Der Befehl gibt Folgendes zurรผck:
Der Grund dafรผr ist, dass alle Zeilen in der rechten Tabelle mit denen in der anderen Tabelle abgeglichen wurden. Wenn einige der Zeilen nicht รผbereinstimmen wรผrden, hรคtten wir in der ersten Spalte NULL-Werte.






































































