Auf dem heutigen Markt, wo jeden Tag etwa 2,5 Trillionen Bytes an Daten generiert werden, ist es sehr wichtig zu verstehen, wie man mit solch einer riesigen Datenmenge umgeht. Nun, hier kommt die Structured Query Language oder SQL ins Spiel. Daher werde ich in diesem Artikel zum SQL-Tutorial die folgenden wichtigen Konzepte diskutieren, die ein Muss auf dem Weg zum Datenbankadministrator sind.
- Einführung in SQL
- Was ist SQL?
- Anwendungen von SQL
- SQL-Datentypen
- SQL-Operatoren
- Top SQL-Befehle
- ERSTELLEN
- LÖSCHEN
- ÄNDERN
- KÜRZEN
- ERKLÄREN
- EINFÜGEN IN
- AKTUALISIEREN
- AUSWÄHLEN
- Gefällt mir
- GEWÄHRUNG
- Schlüssel in der Datenbank
- SQL-Einschränkungen
- Normalisierung
- SQL-Joins
- Aufrufe
SQL-Tutorial:Einführung in SQL
Was ist SQL?
Die von Donald D.Chamberlin in den 1970er Jahren entwickelte Structured Query Language oder am häufigsten als SQL bekannt, ist eine der beliebtesten Sprachen, die zum Bearbeiten, Speichern, Aktualisieren und Abrufen von Daten verwendet wird eine relationale Datenbank. SQL besteht aus verschiedenen Befehlen, die in 4 Kategorien unterteilt sind, d. H. DDL, DML, DCL und TCL, um mit Daten in Datenbanken zu spielen. Auch relationale Datenbanken wie MySQL-Datenbanken, Oracle, MS SQL Server, Sybase usw. verwenden SQL, um Daten zu ändern.
SQL-Anwendungen
Die Anwendungen von SQL sind wie folgt:
- Mit SQL können Sie Tabellen und Datenbanken erstellen und löschen.
- Es erlaubt den Benutzern, Daten in Datenbanken zu definieren und zu manipulieren.
- SQL ermöglicht den Benutzern, auf Daten in RDBMS zuzugreifen, sie zu ändern und zu beschreiben.
- Mit SQL können Sie Berechtigungen für Tabellen, Ansichten und Prozeduren festlegen und verschiedenen Benutzern bestimmte Berechtigungen erteilen.
- SQL ermöglicht Ihnen die Einbettung in andere Sprachen mithilfe von SQL-Bibliotheken und -Modulen.
Da Sie nun die Grundlagen von SQL kennen, lassen Sie uns als Nächstes in diesem SQL-Tutorial verstehen, was die verschiedenen SQL-Datentypen sind.
SQL-Datentypen
SQL-Datentypen werden in die folgenden Kategorien unterteilt:
- Numerisch – Die numerischen Datentypen erlauben sowohl vorzeichenbehaftete als auch vorzeichenlose Ganzzahlen. Sie können weiter in exakte und ungefähre Datentypen unterteilt werden, wobei exakt Ganzzahlen in Form ganzer Zahlen erlaubt und ungefähr Gleitkommazahlen erlaubt.
- Zeichenkette – Dieser Datentyp erlaubt Zeichen fester und variabler Länge. Dieser Datentyp kann auch weiter in Unicode-Zeichen kategorisiert werden, die eine feste und variable Länge von Unicode-Zeichen zulassen.
- Binär – Die binären Datentypen ermöglichen die Speicherung von Daten im Format binärer Werte mit fester und variabler Länge.
- Datum und Uhrzeit – Dieser Datentyp ermöglicht die Speicherung von Daten in verschiedenen Datums- und Zeitformaten.
- Andere – Dieser Abschnitt der Datentypen enthält Datentypen wie table, XML, cursor, uniqueidentifier und sql_variant.
Wenn Sie ein detailliertes Verständnis der verschiedenen SQL-Datentypen erhalten möchten, können Sie sich auf die ausführliche Anleitung zu SQL-Datentypen beziehen.
SQL-Operatoren
Operatoren sind die Konstrukte, die die Werte der Operanden manipulieren können. Betrachten Sie den Ausdruck 4 + 6 =10, hier sind 4 und 6 Operanden und + heißt Operator.
SQL unterstützt die folgenden Arten von Operatoren:
- Arithmetische Operatoren
- Bitweise Operatoren
- Vergleichsoperatoren
- Zusammengesetzte Operatoren
- Logische Operatoren
Um die verschiedenen von SQL unterstützten Operatoren ausführlich kennenzulernen, klicken Sie hier. Nun, da Sie wissen, was SQL und seine Grundlagen sind, lassen Sie uns die wichtigsten Befehle oder Anweisungen in SQL verstehen.
SQL-Tutorial:Die wichtigsten SQL-Befehle
SQL besteht aus verschiedenen Befehlen oder Anweisungen zum Hinzufügen, Ändern, Löschen oder Aktualisieren von Daten in der Datenbank. In diesem Artikel zum SQL-Tutorial werden wir die folgenden Anweisungen besprechen:
-
- ERSTELLEN
- LÖSCHEN
- ÄNDERN
- KÜRZEN
- ERKLÄREN
- EINFÜGEN IN
- AKTUALISIEREN
- AUSWÄHLEN
- Gefällt mir
- GEWÄHRUNG
In diesem SQL-Tutorial werde ich die folgende Datenbank als Beispiel betrachten, um Ihnen zu zeigen, wie Sie Abfragen mit diesen SQL-Befehlen schreiben.
Kundennummer | Kundenname | Telefonnummer | Adresse | Stadt | Land |
1 | Simon | 9876543210 | Donald Street 52 | Hyderabad | Indien |
2 | Akash | 9955449922 | Queens Road 74 | Mumbai | Indien |
3 | Patrick | 9955888220 | Seidentafel 82 | Delhi | Indien |
4 | Gleicher | 9647974327 | IG Straße 19 | Hyderabad | Indien |
5 | Johannes | 9674325689 | Brigaden-Straßensperre 9 | Bangalore | Indien |
ERSTELLEN
Die CREATE-Anweisung wird verwendet, um eine Tabelle, Ansicht oder Datenbank auf folgende Weise zu erstellen:
DATENBANK ERSTELLEN
Wird verwendet, um eine Datenbank zu erstellen.
Syntax
CREATE DATABASE DatabaseName;
Beispiel
CREATE DATABASE CustomerInfo;
TABELLE ERSTELLEN
Diese Anweisung wird verwendet, um eine Tabelle zu erstellen.
Syntax
CREATE TABLE TableName ( Column1 data type, Column2 data type, .... ColumnN data type );
Beispiel
CREATE TABLE Customers ( CustomerID int, CustomerName varchar(255), PhoneNumber int, Address varchar(255), City varchar(255), Country varchar(255) );
ANSICHT ERSTELLEN
Wird verwendet, um eine Ansicht zu erstellen.
Syntax
CREATE VIEW OR REPLACE ViewName AS SELECT Column1, Column2, ..., ColumnN FROM TableName WHERE Condition;
Beispiel
CREATE VIEW OR REPLACE HydCustomers AS SELECT CustomerName, PhoneNumber FROM Customers WHERE City = "Hyderabad";
Hinweis: Bevor Sie mit dem Erstellen einer Tabelle und dem Eingeben von Werten beginnen, müssen Sie die Datenbank verwenden, indem Sie die USE-Anweisung als [USE CustomersInfo; verwenden ]
FALLEN
Die DROP-Anweisung wird verwendet, um eine vorhandene Tabelle, Ansicht oder Datenbank zu löschen.
DATENBANK LÖSCHEN
Wird verwendet, um die Datenbank zu löschen. Wenn Sie diese Anweisung verwenden, gehen alle in der Datenbank vorhandenen Informationen verloren.
Syntax
DROP DATABASE DatabaseName;
Beispiel
DROP DATABASE CustomerInfo;
FALLTABELLE
Wird verwendet, um die Tabelle zu löschen. Wenn Sie diese Anweisung verwenden, gehen alle in der Tabelle enthaltenen Informationen verloren.
Syntax
DROP TABLE TableName;
Beispiel
DROP TABLE Customers;
DROP-ANSICHT
Wird verwendet, um die Ansicht zu löschen. Wenn Sie diese Anweisung verwenden, gehen alle in der Ansicht vorhandenen Informationen verloren.
Syntax
DROP VIEW ViewName;
Beispiel
DROP VIEW HydCustomers;
ÄNDERN
Die ALTER-Anweisung wird verwendet, um Einschränkungen oder Spalten in einer bestehenden Tabelle hinzuzufügen, zu löschen oder zu ändern.
TABELLE ÄNDERN
Die ALTER-Anweisung wird verwendet, um Spalten in einer bestehenden Tabelle zu löschen, hinzuzufügen und zu ändern. Sie können ALTER TABLE mit ADD/DROP-Spalte verwenden, um eine Spalte in der Tabelle hinzuzufügen oder zu löschen. Abgesehen davon können Sie auch eine bestimmte Spalte ÄNDERN/ÄNDERN.
Syntax
ALTER TABLE TableName ADD ColumnName Data Type; ALTER TABLE TableName DROP COLUMN ColumnName; ALTER TABLE TableName ALTER COLUMN ColumnName Data Type;
Beispiel
--ADD Column Gender: ALTER TABLE Customers ADD Gender varchar(255); --DROP Column Gender: ALTER TABLE Customers DROP COLUMN Gender ; --Add a column DOB and change the data type from Date to Year. ALTER TABLE DOB ADD DOB date; ALTER TABLE DOB ALTER DOB year;
KÜRZEN
Die TRUNCATE-Anweisung wird verwendet, um die in der Tabelle vorhandenen Informationen zu löschen, aber nicht die Tabelle selbst. Sobald Sie also diesen Befehl verwenden, gehen Ihre Informationen verloren, aber die Tabelle ist nicht mehr in der Datenbank vorhanden.
Syntax
TRUNCATE TABLE TableName;
Beispiel
TRUNCATE Table Customers;
ERKLÄREN
Die Anweisungen EXPLAIN und DESCRIBE sind Synonyme, die zum Abrufen eines Abfrageausführungsplans bzw. der Informationen über eine Tabellenstruktur verwendet werden. Diese Anweisung kann mit INSERT -, DELETE -, SELECT -, UPDATE - und REPLACE -Anweisungen verwendet werden.
Syntax
--Syntax for DESCRIBE DESCRIBE TableName; --Sample syntax for EXPLAIN EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2);
Beispiel
DESCRIBE Customers; EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID);
EINFÜGEN IN
Die Anweisung INSERT INTO wird verwendet, um neue Datensätze in eine Tabelle einzufügen.
Syntax
INSERT INTO TableName (Column1, Column2, Column3, ...,ColumnN) VALUES (value1, value2, value3, ...); --If you do not want to mention the column names then use the below syntax, but the order of values entered should match the column data types : INSERT INTO TableName VALUES (Value1, Value2, Value3, ...);
Beispiel
INSERT INTO Customers(CustomerID, CustomerName, PhoneNumber, Address, City, Country) VALUES ('06', 'Sanjana', '9654323491', 'Oxford Street House No 10', 'Bengaluru', 'India'); INSERT INTO Customers VALUES ('07', 'Himani','9858018368', 'Nice Road 42', 'Kolkata', 'India');
AKTUALISIEREN
Die UPDATE-Anweisung wird verwendet, um die bereits in der Tabelle vorhandenen Datensätze zu ändern.
Syntax
UPDATE TableName SET Column1 = Value1, Column2 = Value2, ... WHERE Condition;
Beispiel
UPDATE Customers SET CustomerName = 'Aisha', City= 'Kolkata' WHERE EmployeeID = 2;
AUSWÄHLEN
Die SELECT-Anweisung wird verwendet, um Daten aus einer Datenbank auszuwählen und in einer Ergebnistabelle zu speichern, die als Ergebnismenge bezeichnet wird .
Syntax
SELECT Column1, Column2, ...ColumN FROM TableName; --(*) is used to select all from the table SELECT * FROM table_name; -- To select the number of records to return use: SELECT TOP 3 * FROM TableName;
Beispiel
SELECT CustomerID, CustomerName FROM Customers; --(*) is used to select all from the table SELECT * FROM Customers; -- To select the number of records to return use: SELECT TOP 3 * FROM Customers;
Außerdem können Sie das Schlüsselwort SELECT mit DISTINCT, ORDER BY, GROUP BY, HAVING-Klausel und INTO verwenden.
WIE
Dieser Operator wird mit einer WHERE-Klausel verwendet, um nach einem bestimmten Muster in einer Spalte einer Tabelle zu suchen. Es gibt hauptsächlich zwei Wildcards, die in Verbindung mit dem LIKE-Operator verwendet werden:
- % – Es stimmt mit 0 oder mehr Zeichen überein.
- _ – Es stimmt mit genau einem Zeichen überein.
Syntax
SELECT ColumnName(s) FROM TableName WHERE ColumnName LIKE pattern;
Beispiel
SELECT * FROM Customers WHERE CustomerName LIKE 'S%';
GEWÄHRUNG
Der GRANT-Befehl wird verwendet, um den Benutzern Privilegien oder Zugriff auf die Datenbank und ihre Objekte zu gewähren.
Syntax
GRANT PrivilegeName ON ObjectName TO {UserName |PUBLIC |RoleName} [WITH GRANT OPTION];
wo,
- Berechtigungsname – Die dem Benutzer gewährten Privilegien/Rechte/Zugriffe.
- Objektname – Name eines Datenbankobjekts wie TABLE/VIEW/STORED PROC.
- Benutzername – Name des Benutzers, der Zugriff/Rechte/Privilegien erhält.
- ÖFFENTLICH – Um allen Benutzern Zugriffsrechte zu gewähren.
- Rollenname – Der Name einer Gruppe von Privilegien, die zusammen gruppiert sind.
- MIT GEWÄHRUNGSOPTION – Um dem Benutzer Zugriff zu geben, um anderen Benutzern Rechte zu erteilen.
Beispiel
-- To grant SELECT permission to Customers table to admin GRANT SELECT ON Customers TO admin;
Jetzt, da Sie die wichtigsten SQL-Befehle kennen, lassen Sie uns verstehen, welche verschiedenen Arten von Schlüsseln in der Datenbank verwendet werden. Nun, dieses Konzept hilft Ihnen zu verstehen, wie jede Tabelle in einem relationalen Datenbankverwaltungssystem mit der anderen Tabelle zusammenhängt.
SQL-Tutorial:Schlüssel
Die folgenden 7 Arten von Schlüsseln können in einer Datenbank berücksichtigt werden:
- Kandidatenschlüssel – Ein Satz von Attributen, die eine Tabelle eindeutig identifizieren können, kann als Kandidatenschlüssel bezeichnet werden. Eine Tabelle kann mehr als einen Kandidatenschlüssel haben, und aus den ausgewählten Kandidatenschlüsseln kann ein Schlüssel als Primärschlüssel ausgewählt werden.
- Superschlüssel – Der Satz von Attributen, die ein Tupel eindeutig identifizieren können, wird als Superschlüssel bezeichnet. Ein Kandidatenschlüssel, ein Primärschlüssel und ein eindeutiger Schlüssel sind also ein Superschlüssel, aber umgekehrt ist es nicht wahr.
- Primärschlüssel – Ein Satz von Attributen, die zur eindeutigen Identifizierung jedes Tupels verwendet werden, ist ebenfalls ein Primärschlüssel.
- Alternativschlüssel – Alternative Schlüssel sind die Kandidatenschlüssel, die nicht als Primärschlüssel ausgewählt werden.
- Eindeutiger Schlüssel – Der eindeutige Schlüssel ähnelt dem Primärschlüssel, erlaubt jedoch einen NULL-Wert in der Spalte.
- Fremdschlüssel – Ein Attribut, das nur die vorhandenen Werte als Werte eines anderen Attributs annehmen kann, ist der Fremdschlüssel des Attributs, auf das es sich bezieht.
- Zusammengesetzter Schlüssel – Ein zusammengesetzter Schlüssel ist eine Kombination aus zwei oder mehr Spalten, die jedes Tupel eindeutig identifizieren.
Ich hoffe, Sie haben die verschiedenen Arten von Schlüsseln in der Datenbank verstanden. Lassen Sie uns als Nächstes in diesem Artikel zum SQL-Tutorial die Einschränkungen in der Datenbank besprechen. Nun, SQL-Einschränkungen werden verwendet, um die Genauigkeit und Zuverlässigkeit von Daten zu erhöhen, die über eine Tabelle in die Datenbank gelangen.
SQL-Tutorial: Einschränkungen
SQL-Einschränkungen stellen sicher, dass es keine Verletzung in Bezug auf eine Datentransaktion gibt, wenn sie gefunden wird, wird die Aktion beendet. Der Hauptzweck der folgenden Einschränkungen besteht darin, den Datentyp einzuschränken, der in eine Tabelle aufgenommen werden kann.
- NICHT NULL – Diese Einschränkung wird verwendet, um sicherzustellen, dass eine Spalte keinen NULL-Wert speichern kann.
- EINZIGARTIG – Die UNIQUE-Einschränkung wird verwendet, um sicherzustellen, dass alle in einer Spalte oder Tabelle eingegebenen Werte eindeutig sind.
- ÜBERPRÜFEN – Diese Einschränkung wird verwendet, um sicherzustellen, dass eine Spalte oder mehrere Spalten eine bestimmte Bedingung erfüllen.
- STANDARD – Die DEFAULT-Einschränkung wird verwendet, um einen Standardwert für eine Spalte festzulegen, wenn kein Wert angegeben ist.
- INDEX – Diese Einschränkung wird für Indizes in der Tabelle verwendet, wodurch Sie sehr schnell Daten aus der Datenbank erstellen und abrufen können.
Wenn Sie mehr über die folgenden Einschränkungen mit Syntax und Beispielen erfahren möchten, können Sie sich auf andere Artikel zu SQL beziehen. Nachdem Sie sich nun mit Schlüsseln und Einschränkungen in der Datenbank beschäftigt haben, werfen wir als Nächstes in diesem Artikel über das SQL-Tutorial einen Blick auf ein interessantes Konzept der Normalisierung.
SQL-Tutorial:Normalisierung
Normalisierung ist der Prozess der Organisation von Daten, um Duplizierung und Redundanz zu vermeiden. Es gibt viele aufeinanderfolgende Ebenen der Normalisierung, die als Normalformen bezeichnet werden . Außerdem hängt jede aufeinanderfolgende Normalform von der vorherigen ab. Die folgenden Normalformen sind vorhanden:
Um die obigen Normalformen zu verstehen, betrachten wir die folgende Tabelle:
Wenn Sie die obige Tabelle beobachten, können Sie die Datenredundanz und die Duplizierung von Daten deutlich erkennen. Also normalisieren wir diese Tabelle. Um mit der Normalisierung der Datenbanken zu beginnen, sollten Sie immer mit der niedrigsten Normalform beginnen, dh 1NF, und dann schließlich zu den höheren Normalformen übergehen.
Lassen Sie uns nun sehen, wie wir die erste Normalform für die obige Tabelle ausführen können.
Erste Normalform (1NF)
Um sicherzustellen, dass die Datenbank in 1NF sein muss , sollte jede Tabellenzelle einen einzelnen Wert haben. Daher müssen im Grunde alle Datensätze eindeutig sein . Die obige Tabelle wird wie folgt in 1NF normalisiert:
Wenn Sie in der obigen Tabelle beobachten, sind alle Datensätze eindeutig. Dennoch gibt es eine Menge Datenredundanz und Duplizierung. Um das zu vermeiden, normalisieren wir die Datenbank in die zweite Normalform.
Zweite Normalform (2NF)
Um sicherzustellen, dass die Datenbank in 2NF sein muss , sollte die Datenbank 1NF sein und sollte auch einen einspaltigen Primärschlüssel haben . Die obige Tabelle wird wie folgt in 2NF normalisiert:
Wenn Sie die obigen Tabellen betrachten, hat jede Tabelle einen einspaltigen Primärschlüssel. Es gibt jedoch eine Menge Datenredundanz und Duplizierung einiger Spalten. Um das zu vermeiden, lassen Sie uns die Datenbank in die dritte Normalform normalisieren.
Dritte Normalform (3NF)
Um sicherzustellen, dass die Datenbank in 3NF sein muss , sollte die Datenbank in 2NF vorliegen und darf keine transitiven funktionalen Abhängigkeiten haben . Die obigen Tabellen werden wie folgt in 3NF normalisiert:
Wenn Sie die obigen Tabellen beachten, hat die Datenbank keine transitiven Abhängigkeiten. Nach diesem Schritt müssen wir unsere Datenbank also nicht weiter normalisieren. Wenn Sie jedoch Anomalien oder mehr als einen einzelnen Schlüsselkandidaten sehen, können Sie mit der nächsthöheren Normalform fortfahren, d. h. BCNF.
Boyce-Codd-Normalform (BCNF)
Um sicherzustellen, dass die Datenbank in BCNF sein muss, muss die Datenbank in 3NF vorhanden sein und die Tabellen müssen weiter unterteilt werden, um sicherzustellen, dass nur ein Kandidatenschlüssel vorhanden ist.
Damit beenden wir die Normalisierung. Lassen Sie uns als Nächstes in diesem SQL-Tutorial ein wichtiges Konzept in SQL besprechen, nämlich Joins.
SQL-Tutorial:Verknüpfungen
Joins werden verwendet, um Zeilen aus zwei oder mehr Tabellen zu kombinieren, basierend auf einer verwandten Spalte zwischen diesen Tabellen und auch auf wenigen Bedingungen. Es gibt hauptsächlich vier Arten von Joins:
- INNER JOIN: Dieser Join gibt die Datensätze zurück, die in beiden Tabellen übereinstimmende Werte haben.
- FULL JOIN: Der FULL JOIN gibt alle Datensätze zurück, die entweder in der linken oder in der rechten Tabelle übereinstimmen.
- LEFT JOIN: Dieser Join gibt Datensätze aus der linken Tabelle zurück, sowie diejenigen Datensätze, die die Bedingung aus der rechten Tabelle erfüllen.
- RIGHT JOIN: Dieser Join gibt Datensätze aus der rechten Tabelle zurück, sowie diejenigen Datensätze, die die Bedingung aus der linken Tabelle erfüllen.
Das war also eine kurze Beschreibung von JOINS, aber wenn Sie eine detaillierte Beschreibung von JOINS mit einem detaillierten Beispiel wünschen, können Sie auf meinen Artikel über SQL JOINS verweisen. Lassen Sie uns als Nächstes in diesem SQL-Tutorial das letzte Konzept für diesen Artikel besprechen, d. h. Ansichten.
SQL-Tutorial:Ansichten
Eine Ansicht in SQL ist eine einzelne Tabelle, die von anderen Tabellen abgeleitet ist. Eine Ansicht enthält Zeilen und Spalten ähnlich einer echten Tabelle und enthält Felder aus einer oder mehreren Tabellen. Siehe folgendes Bild:
Um zu verstehen, wie eine Ansicht erstellt und gelöscht wird, können Sie sich auf die oben erwähnten CREATE- und DROP-Anweisungen beziehen. Damit beenden wir diesen Artikel zum SQL-Tutorial. Ich hoffe, Sie fanden diesen Artikel informativ. Wenn Sie sich auf Vorstellungsgespräche als Datenbankadministrator vorbereiten und nach einer umfassenden Liste von Fragen suchen, können Sie auch unseren Artikel über SQL-Interviewfragen lesen.
Wenn Sie mehr über MySQL erfahren und diese relationale Open-Source-Datenbank kennenlernen möchten, dann sehen Sie sich unsere MySQL-DBA-Zertifizierungsschulung an, die eine von einem Kursleiter geleitete Live-Schulung und eine echte Schulung umfasst -lebenslange Projekterfahrung. Dieses Training wird Ihnen dabei helfen, MySQL gründlich zu verstehen und das Thema zu beherrschen.
Haben Sie eine Frage an uns? Bitte erwähnen Sie es im Kommentarbereich dieses SQLTutorials und wir werden uns bei Ihnen melden.