Einführung
In diesem Projekt lernst du, wie du auf MySQL zugreifen, Daten importieren und Informationen über Mitarbeiter mithilfe von eingebauten MySQL-Funktionen abfragen kannst.
👀 Vorschau
MariaDB [personnel]> SOURCE /home/labex/project/answer.sql;
+------------------------------------------+---------------+----------------+
| Name | Annual Income | Current User |
+------------------------------------------+---------------+----------------+
| bc70be7f38046e64dd779f276ce4a20f99153f26 | 800.000 | root@localhost |
| 6e1cae96112fe249dc0fb4f9a004c9dc04315608 | 1.900.000 | root@localhost |
| 7c7f32425fa076caeed971f5549c82ffa88fd0eb | 1.750.000 | root@localhost |
| a1787353201302d65c744486c1e940709fee0eff | 2.975.000 | root@localhost |
| f3b9b87a2f377c006e935f32dd25ea55ebf7f551 | 2.650.000 | root@localhost |
| 7cde55b3a6e9cf610db200b6b9cc9b5adca1657f | 2.850.000 | root@localhost |
| 4f90e103facadd0787d7a6828f096f6e66595a47 | 2.450.000 | root@localhost |
| 7634fdc80aa4027cfd5e966abc1b6b4b4ea19fbe | 3.000.000 | root@localhost |
| 50b8a339f82ab9ce6c55bf8ea10dad8513e9d142 | 5.000.000 | root@localhost |
| e043e3d3ebddafaa5ed97f7dcc4d236286f8ad4a | 1.500.000 | root@localhost |
| 2d2eb27e1db8836e44cd4e94f58b89728331e8de | 1.100.000 | root@localhost |
| 6afc44af3cbdbb6718e8da8715a1956b895dc5d2 | 950.000 | root@localhost |
| 7e5b07d8bbb5e0a55b5d428476d4691b3ee97b4a | 3.000.000 | root@localhost |
| 25d5ae3b0e0dac511ba94e337b88e0887538b31f | 1.300.000 | root@localhost |
+------------------------------------------+---------------+----------------+
14 Zeilen in Satz (0,000 Sekunden)
🎯 Aufgaben
In diesem Projekt wirst du lernen:
- Wie du auf MySQL mit dem Befehl
sudoohne Passwort zugreifen kannst - Wie du Daten aus einer SQL-Datei in die MySQL-Datenbank importieren kannst
- Wie du die Namen und das jährliche Einkommen von Mitarbeitern aus der Tabelle
empabfragen kannst - Wie du die Namen von Mitarbeitern mit der SHA-Funktion verschlüsseln kannst
- Wie du das jährliche Einkommen mit 3 Dezimalstellen formatiert kannst
- Wie du die aktuellen Datenbankkontoinformationen anzeigen kannst
🏆 Errungenschaften
Nach Abschluss dieses Projekts wirst du in der Lage sein:
- Vertrauensvoll auf eine MySQL-Datenbank über die Befehlszeile zugreifen und verwalten
- Datenimport und grundlegende Datenabfrageoperationen ausführen
- Einbauten MySQL-Funktionen anwenden, um Daten zu manipulieren und zu formatieren
- Die Wichtigkeit der Datensicherheit und -verschlüsselung verstehen
- Deine Fähigkeiten bei der Arbeit mit MySQL-Datenbanken und SQL-Abfragen demonstrieren
Zugang zu MySQL und Datenimport
In diesem Schritt lernst du, wie du auf MySQL mit dem Befehl sudo ohne Passwort zugreifen kannst und wie du die Daten aus /home/labex/project/personnel.sql in MySQL importierst und zur personnel-Datenbank wechselst.
- Öffne ein Terminal und starte den MySQL-Dienst mit dem folgenden Befehl:
sudo service mysql start
- Greife auf MySQL mit dem Befehl
sudozu:
sudo mysql
- Importiere die Daten aus
/home/labex/project/personnel.sqlin MySQL und wechsle zurpersonnel-Datenbank:
MariaDB [None]> SOURCE /home/labex/project/personnel.sql;
Abfrage von Mitarbeiternamen und jährlichem Einkommen
In diesem Schritt lernst du, wie du die Namen und das jährliche Einkommen aller Mitarbeiter in der Tabelle emp abfragst und die Datenbankkontoinformationen für die aktuelle Operation anzeigst.
- Füge folgenden Code zur
answer.sql-Datei hinzu.
SELECT SHA(emp.ename) AS 'Name',
FORMAT(IFNULL(emp.sal, 0) + IFNULL(emp.comm, 0), 3) AS 'Annual Income',
CURRENT_USER() AS 'Current User'
FROM emp;
Hier ist, was der Code macht:
SHA(emp.ename): Verschlüsselt die Mitarbeiternamen mit der SHA-Funktion.IFNULL(emp.sal, 0) + IFNULL(emp.comm, 0): Berechnet das jährliche Einkommen, indem der Gehalt (sal) und die Prämie (comm) addiert werden, und ersetzt alle NULL-Werte mit 0.FORMAT(..., 3): Formatiert das jährliche Einkommen mit 3 Dezimalstellen.CURRENT_USER(): Zeigt die aktuellen Datenbankkontoinformationen an.
- Führe die
answer.sql-Datei aus.
SOURCE /home/labex/project/answer.sql;
Die Abfrage liefert die folgende Ausgabe:
+------------------------------------------+---------------+----------------+
| Name | Annual Income | Current User |
+------------------------------------------+---------------+----------------+
| bc70be7f38046e64dd779f276ce4a20f99153f26 | 800.000 | root@localhost |
| 6e1cae96112fe249dc0fb4f9a004c9dc04315608 | 1.900.000 | root@localhost |
| 7c7f32425fa076caeed971f5549c82ffa88fd0eb | 1.750.000 | root@localhost |
| a1787353201302d65c744486c1e940709fee0eff | 2.975.000 | root@localhost |
| f3b9b87a2f377c006e935f32dd25ea55ebf7f551 | 2.650.000 | root@localhost |
| 7cde55b3a6e9cf610db200b6b9cc9b5adca1657f | 2.850.000 | root@localhost |
| 4f90e103facadd0787d7a6828f096f6e66595a47 | 2.450.000 | root@localhost |
| 7634fdc80aa4027cfd5e966abc1b6b4b4ea19fbe | 3.000.000 | root@localhost |
| 50b8a339f82ab9ce6c55bf8ea10dad8513e9d142 | 5.000.000 | root@localhost |
| e043e3d3ebddafaa5ed97f7dcc4d236286f8ad4a | 1.500.000 | root@localhost |
| 2d2eb27e1db8836e44cd4e94f58b89728331e8de | 1.100.000 | root@localhost |
| 6afc44af3cbdbb6718e8da8715a1956b895dc5d2 | 950.000 | root@localhost |
| 7e5b07d8bbb5e0a55b5d428476d4691b3ee97b4a | 3.000.000 | root@localhost |
| 25d5ae3b0e0dac511ba94e337b88e0887538b31f | 1.300.000 | root@localhost |
+------------------------------------------+---------------+----------------+
14 Zeilen in Satz (0,000 Sekunden)
Die Abfrage wurde in der Datei /home/labex/project/answer.sql gespeichert.
Zusammenfassung
Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Übungen absolvieren, um deine Fähigkeiten zu verbessern.



