PMG2224 4/DB Beleg/Alia

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>SQL</language>
=Datenbank zum Thema Länder der Erde=

==Begründung der Themenwahl==
Das Ziel der folgenden Datenbank ist es, sich einen Ueberblick ueber ausgewaehlte Laender der Welt verschaffen zu koennen. Im Falle einer Erweiterung auf jedes einzelne Land der Erde koennte man problemlos, schnell und effzient Informationen ueber jedes erdenkliche Land der Welt erhalten und sogar erfahren, welche Hintergruende markante Merkmale wie zum Beispiel die Sprache haben und auch, wie diese Merkmale miteinadner vernknuepft sind. Zusammenfassend kann man also sagen, das Ziel der Datenbank ist es, Wissen ueber laenderspezifische Details aber gleichzeitig auch globale Zusammenhaenge zu dokumentieren und zur Verfuegung zu stellen.
==ERM zum Thema==
[[Datei:download.png]]

==Relationenmodell==
[[Datei:download2.png]]


Land(<u>L_ID</u>, Kontinent, Einwohner, Größe, Hauptreligion, Hauptstadt)

Sprache(<u>S_ID</u>, Schriftzeichen, Sprachstamm, Sprecher)

Präsident(<u>P_ID</u>, Vorname, Geburtsdatum, Alter, Geschlecht, L_ID)

Land_Sprache(<u>L_ID</u>, S_ID)

==Erstellung der Datenbank in SQL==
===Umsetzung der Tabellen===
<code id="65f4e03619bd9" >
CREATE TABLE Land (
L_ID varchar PRIMARY KEY,
  Kontinent varchar ,
  Hauptreligion varchar,
  EinwohnerInMio integer,
  GrößeInQuadratkilometer integer ,
  Hauptstadt varchar

);


CREATE TABLE Sprache(
 S_ID varchar PRIMARY KEY,
 Schriftzeichen integer,
 Sprachstamm varchar,
 Sprecher integer
);

CREATE TABLE Praesident(
 P_ID varchar PRIMARY KEY,
 Vorname varchar,
 Geburtsdatum varchar,
 Geschlecht varchar,
 AlterinJahren integer,
 L_ID varchar,
    FOREIGN KEY (L_ID) REFERENCES Land(L_ID)

);

CREATE TABLE Land_Sprache(
L_ID varchar,
S_ID varchar,
FOREIGN KEY (L_ID) REFERENCES Land(L_ID),
FOREIGN KEY (S_ID) REFERENCES Sprache(S_ID)
);


</code>

===Informationen der Tabellen===
<code id="65f4e09b071c1"  >
INSERT INTO Land VALUES ('Deutschland', 'Europa', 'Christentum', 84, 357000 ,'Berlin');
INSERT INTO Land VALUES ('USA', 'Nordamerika', 'Christentum', 342, 9834000 ,'Washington DC.');
INSERT INTO Land VALUES ('China', 'Asien', 'Konfessionslos', 1400, 9597000 ,'Peking');
INSERT INTO Land VALUES ('Indien', 'Asien', 'Hinduismus', 1400, 3287000,'New Dehli'); 
INSERT INTO Land VALUES ('Brasilien', 'Südamerika', 'Christentum', 214, 8510000,'Brasilia');
INSERT INTO Land VALUES ('Russland', 'Asien', 'Christentum', 143, 17100000,'Moskau');
INSERT INTO Land VALUES ('Algerien', 'Afrika', 'Isalm', 46, 2382000 ,'Algier');
INSERT INTO Land VALUES ('Frankreich', 'Europa', 'Christentum', 68, 632733 ,'Paris');
INSERT INTO Land VALUES ('Kanada', 'Nordamerika', 'Christentum', 38, 9984670 ,'Ottawa');
INSERT INTO Land VALUES ('Spanien', 'Europa', 'Christentum', 47, 505990, 'Madrid');
INSERT INTO Land VALUES ('Mexiko', 'Nordamerika', 'Christentum', 126, 1964375, 'Mexiko-Stadt');
INSERT INTO Land VALUES ('Angola', 'Afrika', 'Christentum', 32, 1246700, 'Luanda');
INSERT INTO Land VALUES ('Portugal', 'Europa', 'Christentum', 10, 92090, 'Lissabon');



INSERT INTO Sprache VALUES ('Deutsch', 26 , 'Westgermanisch', 76000000 );
INSERT INTO Sprache VALUES ('Franzoesisch', 26, ' Indo-Europäisch', 300000000);
INSERT INTO Sprache VALUES ('Englisch', 26,'Westgermanisch', 3750000000);
INSERT INTO Sprache VALUES ('Hindi', 46, 'Indorianisch', 341000000);
INSERT INTO Sprache VALUES ('Portugisisch', 26,'Romanisch',221000000);
INSERT INTO Sprache VALUES ('Spanisch', 26, 'Romanisch',480000000);
INSERT INTO Sprache VALUES ('Mandarin', 2000,'Sinotibetisch',91800000000);
INSERT INTO Sprache VALUES ('Russisch', 33, 'Ostslawisch',154000000);



INSERT INTO Praesident VALUES ('Steinmeier', 'Frank Walter','5. Januar 1956','Maskulin' ,68 ,'Deutschland');
INSERT INTO Praesident VALUES('Jinping', 'Xi', '15. Juni 1953', 'Maskulin', 68, 'China');
INSERT INTO Praesident VALUES('Putin', 'Wladimir', '7. Oktober 1952', 'Maskulin', 69, 'Russland'); 
INSERT INTO Praesident VALUES('Obrador', 'Andrés Manuel López', '13. November 1953', 'Maskulin', 68, 'Mexiko');
INSERT INTO Praesident VALUES('Sanchez', 'Pedro', '29. Februar 1972', 'Maskulin', 50, 'Spanien');
INSERT INTO Praesident VALUES('Laurenco', 'João', '5. März 1954', 'Maskulin', 67, 'Angola');
INSERT INTO Praesident VALUES('Macron', 'Emmanuel', '21. Dezember 1977', 'Maskulin', 44, 'Frankreich');
INSERT INTO Praesident VALUES('Biden', 'Joe', '20. November 1942', 'Maskulin', 79, 'USA');
INSERT INTO Praesident VALUES('Modi', 'Narendra', '17. September 1950', 'Maskulin', 71,'Indien');
INSERT INTO Praesident VALUES('Trudeau', 'Justin', '25. Dezember 1971', 'Maskulin', 50,'Kanada');
INSERT INTO Praesident VALUES('Rebelo de Sousa', 'Marcelo ', '12. Dezember 1948', 'Maskulin', 73,'Portugal');



INSERT INTO Land_Sprache VALUES ('Kanada', 'Englisch');
INSERT INTO Land_Sprache VALUES ('Kanada', 'Franzoesisch');
INSERT INTO Land_Sprache VALUES ('Indien', 'Hindi');
INSERT INTO Land_Sprache VALUES ('Indien', 'Englisch');
INSERT INTO Land_Sprache VALUES ('USA', 'Englisch');
INSERT INTO Land_Sprache VALUES ('USA', 'Spanisch');
INSERT INTO Land_Sprache VALUES ('Portugal', 'Portugisisch');
INSERT INTO Land_Sprache VALUES ('Angola', 'Portugisisch');
INSERT INTO Land_Sprache VALUES ('Deutschland', 'Deutsch');
</code>

==Abfragen==
===Ausgabe aller Werte===
<run id="65f4e1a6cbf51" ></run>

===Abfrage 1===
<run id="65f4e1a6cbfa4"></run>
===Abfrage 2===
<run id="65f4e1a6cbfed"></run>
===Abfrage 3===
<run id="65f4e1a6cc034"></run>
===Abfrage 4===
<run id="65f4e1a6cc07c"></run>
===Abfrage 5===
<run id="65f4e1a6cc0c5"></run>

==Kritische Reflexion==

''''Kardinalitaeten''''
In meiner Datenbank habe ich von einer 1:1 und einer n:m Beziehung Gebrauch gemacht. Damit ist eine weite Palette an Moeglichkeiten abgedeckt. Im Bezug auf die n:m Beziehung fuer die Sprachen muss ich allerdigns sagen, dass ich diese Loesung fuer das Problem etwas ungeschickt finde. Im Rahmen dieses Schulprojekts und dem damit zusammenhaengenden Umfang an Informationen, ist die neue Tabelle in ihrer Form ausreichend, doch waere der Umfang mehr, wuerde definitv die Effizienz und mit Sicherheit auch die Uebersichtlichkeit immens leiden. Fuer das Projekt jedoch, ist diese Form durchaus akzeptabel.