[S12L1] Intro Relational DB Flashcards
Was ist eine Data Persistence?
- Persistente Daten sind Daten, welche unregelmäßig abgefragt werden und nicht oft modifiziert werden
- Man kann also Vertrauen, dass die Daten vorhanden sind solange man sie nicht explizit entfernt oder modifiziert
Sind JavaScript Objects persistent oder Local Storage Key-Value Pairs?
- JavaScript Objects sind nicht persistent, da sie resetten wenn die Application geschlossen wird
- Local Storage ist Semi-Persistent, kann durch Cookies löschen gelöscht werden von Nutzer
Was ist eine Datenbank?
-Ein Platz um Daten persistent zu speichern
-
Welche Datenbankarten gibt es?
- Relationale Datenbanken (ProgresSQL, Lernen wir)
- Dokumentenbasierte Datenbanken (MongoDB)
- Graphbasierte Datenbanken
Was sind Vor- und Nachteile von dokumentenbasierten Datenbanken?
- Sehr leicht zu bootstrapen
- Für kleinere, nicht komplexe Applikationen nützlich
- Leiten zu Fehlern, wenig Übersicht und Komplexität
Was sind Vor- und Nachteile von graphenbasierten Datenbanken?
-Sind sehr gut für sehr spezielle Anforderungen an eine Datenbank
Warum sollte eine Datenbank relational sein?
- Wenn sie oft genutzt wird
- Wenn Daten effizient gemanaged werden sollen
- Forciert best Practise
- Lindy/Haben sich bewährt
- Wird als guter Skill von Personalern gesehen
Was sind die Grundprinzipien einer relationalen Datenbank?
- Tables, welche aus Rows und Columns bestehen
- Columns sind Schema der Datenbank (Wie die Daten aussehen sollen)
- Rows ist ein Entry eines Datensatzes
- Manche Datensätze sind miteinander verknüpft/related
Wie spricht man mit (relationalen) Datenbanken?
- Durch eine Sprache namens SQL (Structued Query Language)
- Über Javascript durch einen Wrapper für SQL wie knex.js
Warum sollte man SQL lernen?
- Das Leben wird einfacher, besonders beim Debuggen
- Ist ein wichtiger Skill
- Tieferes Verständnis von Knex.js und Datenbank Libraries
Ist SQL eine Programming Language?
- Nein, es ist eine Query Language
- Es gibt keine Conditionals. Schleifen oder Variablen
- Ist skalierbar und liefert nur query Data zurück
Wie sucht man in SQL nach einem speziellen Customer?
select * from Customers where customerid = 6;
select * from Customers where name= “Sascha”;
Wie inserted man Daten via SQL?
Insert into Categories (CategoryName, Description) VALUES (‘Spices, ‘Tasty Stuff’);
Wie Updated man Daten via SQL?
UPDATE Categories SET Description=’Herbs and spices’ WHERE CategoryID = 9;
Wie löscht man Daten via SQL?
DELETE FROM products WHERE ProductId=8;