Klaus Mock: Fehler im DB-Modell?

Beitrag lesen

Hallo,

  • Es kann durchaus auch sein, daß ein Kunde in seinen Netzwerken für verwschienden Anwender verschieden POP3- und SMTP-Server verwendet. Das ist in Deinem Modell nicht abdeckbar. Abgesehen davon, müßten ja Dienste wie DNS, Gateway, Proxy usw. von Rechnern erledigt werden, die auch in dieser Datenbank stehen müßten. So gesehen könnte hier eine Referenz auf die entsprechenden Rechner erfolgen, auch auf die Gefahr hin, Zirkelbezüge zu erstellen

das habe ich jetzt nicht ganz verstanden :/

Du hast in der Tabelle Netzwerk Felder für DNS, Gateway, POP3 bzw. SMTP. Ich gehe jetzt davon aus, daß es sich dabei um IP-Adressen oder Domain-Namen handelt. Eigentlich werden diese Dienste aber ja von physikalischen Geräten abgedeckt, die dann auch in der Datenbank erfasst sein müssten. Dort wiederum ist für den Rechner auch die Adresse eingetragen [....] aber wenn ich so nachdenke wäre es auch nicht so schlau, wenn man anstelle der Adresse die ID des Gerätes eintragen würde, da ja, wie ich anderweitig bemerkt habe, es durchaus Rechner gibt, die mehrere IP-Adressen besitzen. Naja, ein Datenbank-Design ist ja auch nichts, was man so nebenbei machen sollte. also vergiss den Absatz.

ABer was ich auch noch meinte, ist, daß es durchaus vorkommt, daß, gerade in größeren Firmen, die Mails nicht nur über einen zentralen Mailserver verwaltet werden, sondern auch durchaus auf mehrere Rechner aufgeteilt wird. Und da wird dann meist einem Benutzer ein spezieller Mailserver zugeordnet.   Und das wiederum ist durch Dein Modell gar nicht abgedeckt, da Du ja davon ausgehst, daß in einem Netzwerk nur genau ein POP3-Server existieren kann.

  • Für die Hardwareausstattung könnte es durchaus auch sinnvoll sein, daß man diese über zusätzlcihe Tabellen verwaltet.

Versteh ich jetzt auch nicht.

Du hast in den Tabellen für die Workstations und Server Felder für CPU, Motherboard, Grafikkarte CD-Rom usw. Eigentlich sind das Teile, die, ähnlich wie bei der Software, in einem Gerät eingebaut sein können aber nicht zwangsläufig eingebaut sein müssen. Deshalb könntest Du analog zur Software auch die Hardware über zusätzliche Tabellen verwalten. Gemeinsam mit einem Hardware-Typ könnten dann auch Auswertungen bezüglich spezieller Hardwareausstattungen gefahren werden.

BTW: Ich habe mir beim Datenbankdesign bisher immer wieder auch die Frage "Was kann ich den alles von der Datenbank wissen wollen?" gestellt. Das kann oft wirklich gut helfen, sinnvolle Kategorien und Tabellenstrukturen zu finden. Speziell wenn man versucht ist, etwas so mal eben in einem Textfeld abzulegen, sollte man stutzig werden. All die Eigenschaften, nach denen ich eventuell suchen will, sollten möglichst klar abfragbar bleiben.

Eine der möglichen Fragen an so eine Datenbank könnte z.B. lauten:  "Ich muß ein Bugfix bei der Software XY Version 17.3 einspielen. Welche Rechner sind den nun betroffen, und wer muss den nun verständigt werden?"

Da hätte ich jetzt schon z.B. den Bedarf eines Rechnerverantwortlichen in Deiner Datenstruktur drin, wobei es auch ganz anders sein kann.

Ok, kannte ich ehrlich gesagt bis vor kurzem selber noch nicht. also das mit CASADE DELETE. Kannte nur Not Null und UNIQUE usw.

Dann hat Dien Lehrer anscheinend gepatzt;-)

Grüße
  Klaus