unite Geschrieben 30. Juli 2001 Teilen Geschrieben 30. Juli 2001 ich habe ein paar Fragen an die DB-Kenner: 1. Wenn man eine Datenbank erstellt, muss man überall Primary keys vergeben, oder ist es nicht zwingend erforderlich? 2. Muss eine fertige Datenbank bereits Verknüpfungen/Beziehungen enthalten, oder werden diese erst bei den SQL - Abfragen erstellt? Wenn man z.B. auf Nivo.de geht und da den "Fingerabdruck"/Publikationen/"Datenbanken leicht gemacht" anklickt, und da Kapitel 2 (Access) herunterlädt. Dann sieht man unter "Beziehungen", dass alle Tabellen der DB irgendwie logisch verknüpft sind. Ist das ein Muss, oder wird es wie gesagt erst beim SQL - Programmieren gemacht und zwar meine ich damit wo man gewisse Abfragen stellt. (Oder ist es so, dass man zunächst keine logische Verknüpfungen zu machen braucht und sofort mit Abragen arbeitet?) Vielen Dank für alle Antworten im voraus! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Eva Geschrieben 30. Juli 2001 Teilen Geschrieben 30. Juli 2001 Sauberer ist es schon mit Primery Keys und Fremdschlüssel. Aber wie gesagt nichts ist unmöglich man kann auch eine DB schreiben und die Schlüssel in DB-Trigger abfangen, oder wie du willst direkt im Programm (hier kann es dann aber zu Fehlern kommen, wenn man z. B. direkt mit SQL manipuliert kann es zu unschönen Ergebnissen kommen, da es z.B. nicht überprüft ob die Adresse stimmt usw., die Logik ist ja nur in dem einen Programm) Viele Grüsse Eva Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
unite Geschrieben 30. Juli 2001 Autor Teilen Geschrieben 30. Juli 2001 D.h. Bei einer Datenbank, die für ein Unternehmen konzipiert wird und eine Wichtigkeitsstufe "Sehr hoch" besitzt ist es erforderlich mit Primary Keys zu arbeiten?! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Wolle Geschrieben 30. Juli 2001 Teilen Geschrieben 30. Juli 2001 Hi, empfehlenswert ist es die Primary Key's gleich zu setzten. Diese verändern sich ja auch nicht. Wenns unbedingt nötig ist , kann man diese auch noch nachträglich über SQL setzten oder entfernen. Normalerweise ist das aber nicht nötig. Was die Verknüpfungen betrifft: Die setze ich persönlich grundsätzlich erst in den SQL-Abfragen. Ich hab da schon einige unschöne Überraschungen erlebt, wenn die von Anfang an gesetzt sind, gerade im Access (z.B. Daten konnten nicht aktualiert werden). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
therok Geschrieben 3. August 2001 Teilen Geschrieben 3. August 2001 Du schreibst, eine Datenbank entwickeln oder konzipieren. Du bist also, was dieses Projekt angeht, in der Modellationsphase bzw. im Datenbankentwurf. Wenn du ein relationales Datenmodell nimmst (wie impliziert), dann gehört auch das Normalisieren der Relationen (Tabellen) dazu. Würde zumindest ein guter DB-Designer so verstehen. Die 2. Normalform schreibt eine eindeutige Abhängigkeit aller Attribute vom Primärschlüssel vor. Der sollte also rein. Hoffe, geholfen zu haben the rok Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
unite Geschrieben 8. August 2001 Autor Teilen Geschrieben 8. August 2001 Ok. Das mit Primary Keys habe ich jetzt verstanden, wie sieht es denn mit Verknüpfungen aus? Ich meine, unter MS Access gibt es eine Möglichkeit die ganze Database mit allen ihren Verknüpfungen zu sehen, und sie auch zu verändern. Was mich interessiert: ist es notwenig immer diese Verknüpfungen zu setzen oder werden sie erst bei Abfragen konzipiert? (Primary Keys werden natürlich sofort gesetzt) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Titus Geschrieben 13. August 2001 Teilen Geschrieben 13. August 2001 Ich denke mal das es Dir um die Beziehnugen geht?! Diese Beziehungen sind nicht zwingend notwendig!! Aber mal ganz ehrlich, wozu macht man denn Datenbanken!? Man macht Datenbanken auch um Daten strukturiert aufzunehmen. Dieses ist nun mal nur über den Aufbau eines Datenmodells zu realisieren. Solch ein Datenmodell wird nun mal, unter anderem, aus Beziehungen aufgebaut. Das heisst man sollte sich vor dem eigentlichen erstellen der Datenbank ersteinmal grundlegend Gedanken machen welche Daten wie aufgenommen werden sollen!? Gruss Titus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Anja Geschrieben 13. August 2001 Teilen Geschrieben 13. August 2001 Stellt Euch mal vor, Ihr habt eine Auftragstabelle mit Feldern, wie z. B. Auftrags_Nr, Auftragsstatus_Nr, bla, blubb ... ------------------------------------------ 4711 --- 2 ..... 4712 --- 1 *Könnte im Programm ja so umgesetzt sein, dass der Statustext anstelle der Nr ausgegeben wird* Dann habt Ihr eine zweite Tabelle "Auftragsstatus" mit den Feldern Status_Nr, Status_Bez --------------------- 1 --- in Arbeit 2 --- erledigt 3 --- storniert . Die Auftragsstatus_Nr in der Auftragstabelle SOLL selbstverständlich ein Fremdschlüssel auf die Statustabelle sein. --- ist aber nicht als solcher angelegt ---> Beziehungen Nehmen wir mal an, Ihr hättet keine Beziehungen angelegt und würdet den Status 2 aus der Statustabelle löschen! Dann hätte der Auftrag 4711 einen Status 2 (ohne Bez.), der gar nicht existiert! Sowas führt zu Fehlern und darf rein theoretisch gar nicht geschehen. Man sollte keine Stammdaten löschen dürfen, die in anderen "Bewegungsdaten" noch benützt werden. Dafür gibt es in Access soweit ich weiß, so Dinger wie "Lösch- und Aktualisierungsweitergabe", was vorraussetzt, dass man Beziehungen angelegt hat. Ich hoffe, Ihr könnt Euch etwas darunter vorstellen. <FONT COLOR="#a62a2a" SIZE="1">[ 13. August 2001 11:07: Beitrag 4 mal editiert, zuletzt von Anja ]</font> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
unite Geschrieben 13. August 2001 Autor Teilen Geschrieben 13. August 2001 vielen Dank für alle euere Antworten! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.