Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

21

14.11.2010, 13:03

Eine Datenbank ist kein Programm, ne Datenbank bezeichnet eine Menge von Daten.
Ein DBMS ist ein Programm, dass auf die Datenbank direkt zugreift und die Daten von der Datenbank holt.
sta-gaming.de

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

22

14.11.2010, 13:07

@idontknow wenn neue Daten wie eine neue Sprache hinzukommt, solle sich der Inhalt und nicht die Struktur der DB ändern <=> neue Sprachen sollten keine eigene Tabelle erhalten

Prinzipiell gibt es einige Ansätze, wie man eine DB entwerfen kann. Einer der bei kleineren Projekten ganz gut funktionieren kann, ist alles erstmal gedanklich in genau eine Tabelle reinzuschreiben und dann dieses "Schema" nach und nach zu normalisieren (einfach mal nach DB + normalisieren suchen).
In jedem Fall lohnt sich ein Blick in ein gutes SQL Buch.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

23

14.11.2010, 13:21

oki, ich meinte wohl das datenbanksystem. ich hab das gefühl, dass die bezeichnung "datenbank" nicht nur von mir oft sehr allgemein(und teilweise falsch) genutzt wird.

Zitat

In der Theorie versteht man unter Datenbank (engl. database) einen logisch zusammengehörigen Datenbestand. Dieser Datenbestand wird von einem laufenden DBMS verwaltet und für Anwendungssysteme und Benutzer unsichtbar auf nichtflüchtigen Speichermedien abgelegt.

das klingt doch schon viel besser^^
Quelle: Wikipedia
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

DasBlub

Alter Hase

Beiträge: 802

Wohnort: Schweiz

Beruf: Programmierer

  • Private Nachricht senden

24

14.11.2010, 21:25

das eine datenbank hintenrum gespeichert wird, muss auch nicht sein. es gibt in gewissen fällen auch datenbanken, welche nur zur laufzeit die daten enthalten und beim nächsten start wieder leer sind. das macht vorallem dann sinn, wenn man die daten berechnet und sie nur zwischenspeichern will, jedoch eine grosse menge an daten hat und sie nachher weiterverarbeiten will. da macht es in gewissen fällen sinn, die dann nicht in eine datei zu speichern sondern in eine db, damit man sie dann per sql neu abfragen kann.

verrueckt1993

Frischling

Beiträge: 85

Beruf: Informationstechnischer Assistent Fachrichtung AE, 2. Jahr

  • Private Nachricht senden

25

15.11.2010, 18:58

Zu den Bezeichnungen:

Ein DBS (Datenbanksystem) besteht aus einem DBMS (Datenbankmanagementsystem) und der eigentlichen Datenbank. Ich hoffe, damit hat sich die Verwirrung einigermaßen erledigt.

Ich würde, wie DasBlub schon vorgeschlagen hat, vorerst eine Tabelle für alle Sprachen benutzen. Das Ganze solltest du mindestens in die 1. Normalform bringen.

1. Normalform bedeutet, dass du nicht in einer Tabellenzelle mehrere Werte stehen hast, z.B. facere - tun, machen, sondern, das Ganze in zwei Zeilen aufteilst, z.B. facere - tun und facere - machen. Das Problem hierbei ist nur, dass du mit mehreren Sprachen sehr schnell sehr viele Datensätze haben wirst.

OT: facere ist Latein.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »verrueckt1993« (15.11.2010, 19:48)


26

15.11.2010, 19:06

facere - tun und facere - machen

kommt das mir nur so vor, oder hat man dann zwei primärschlüssel (was afaik nicht sein darf)? außerdem sind "tun" und "machen" synonyme, also macht es imo wenig sinn, für die unterscheidung zwischen beiden extra n neuen datensatz aufzumachen.

verrueckt1993

Frischling

Beiträge: 85

Beruf: Informationstechnischer Assistent Fachrichtung AE, 2. Jahr

  • Private Nachricht senden

27

15.11.2010, 19:13

Ich verstehe nicht, wieso ich zwei Primärschlüssel haben sollte?

Nehmen wir mal an, wir hätten eine Tabelle für die Wörter angelegt und benutzen das deutsche Wort als Primärschlüssel (in 1. Normalform):

Deutsch - Englisch - Latein

tun - (to) do - facere
machen - (to) do - facere

28

15.11.2010, 19:28

tun - (to) do - facere
machen - (to) do - facere
machen - (to) make - facere(?)
und jetzt?

verrueckt1993

Frischling

Beiträge: 85

Beruf: Informationstechnischer Assistent Fachrichtung AE, 2. Jahr

  • Private Nachricht senden

29

15.11.2010, 19:52

Da setzt die 2. Normalform an. Man sollte dann die Werte in mehrere Tabellen übertragen, um Redundanzen zu vermeiden. Da ich nicht weiß, wie viel Plan der TS hat, wäre es vielleicht besser, mit der 1. Normalform anzufangen, zur 2. kann man dann immer noch gehen (;
Natürlich hast du recht, dass die 1. Normalform nicht reicht, sobald man mehr als zwei Sprachen und relativ viele Vokabeln hat, allerdings gilt das allgemein für alle Datenbanken, dass man mindestens in die 2. Form geht, um, wie berets gesagt, Redundanzen zu vermeiden.

30

15.11.2010, 19:54

Ok, das macht sinn

Werbeanzeige