Office: (Office 2003) Meine Frage zu meiner Datenbank:)

Helfe beim Thema Meine Frage zu meiner Datenbank:) in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo liebe Forumsgemeinde, joh mal wieder ein paar Fragen. Eins vorweg: Da die DB wozu ich ein paar Fragen haben, leider bisle gößer ist..auch als... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von MarioGabler, 27. Mai 2008.

  1. Meine Frage zu meiner Datenbank:)


    Hallo liebe Forumsgemeinde,

    joh mal wieder ein paar Fragen. Eins vorweg:
    Da die DB wozu ich ein paar Fragen haben, leider bisle gößer ist..auch als Zip..hab ich sie mal hinter diesem Link gelegt.Hoffe ich verstoß nicht gegen Forenregeln: http://rapidshare.com/files/11864370...esung.zip.html

    Nun zum eigentlichen.
    Aufgabe der Datenbank ist es für eine Firma die sich um die Autos ihrer Kunden kümmert, während Sie auf Geschäftreise sind, eine Auftragsdatenbank inkl schrieflichem Ausdruck des Auftrages.

    Sie entsprich genau der DB von

    http://www.ms-office-forum.net/forum...=1#post1114777
    Damit man nicht lang suchen muß:

    Kopie des Textes

    Derzeit ist Sie wie folgt aufgebaut:

    3 Tabellen: 1. Kundendaten
    2. Autodaten
    3.Auftragsdaten

    Formulare: Jeweils ein zur Eingabe:

    Kundeneingabe inkl Unterformular (Auto) zwecks Eingabe des Kunden zugehörigen Autos.

    Auftragseingabe: Hauptformular inkl. 2 Unterformularen. Das Hauptformular bezieht seine Daten von der Kundentabellen, die beiden anderen jeweils aus Auftragstabelle und Autotabelle.

    Die Tabellen haben folgenden Primärschlüssel:

    Kundendaten = Kundennummer = Automatisch
    Auftragsdaten = Auftragsnummer = Automatisch
    Autotabelle = Kennzeichen = Text

    Tabelle KD ist mit Auftrag soweit verknüpft das in Tabelle Auftrags auch der Wert KD.-Nr. vorkommt...ist 1:n

    Tabelle Auftr. ist mit Tabelle Auto. verknüpft das in Tabelle Auftrag der Wert Kennzeichen über 1:n drin ist.

    (Recht herzlichen Dank nochmal an Anne and dieser Stelle)

    Meine Fragen dazu wären erstmal:

    1. Sind hinsichtlich einer sauberen (sofern es das gibt) DB-Prg 3 Tabellen genug oder wäre eine weitere Aufsplitting sinnvoller um z.B etweigie Performance zu verbessern?

    2. Wie bekomme ich bei der Auftragstabelle es hin das zwischen Datum2 und Datum ein eine Gültigkeitsregel definiert wird: Sprich Datum2 muß vor Datum liegen

    3. Ich habe beim Kundeneingabeformular ein Button mit folgender Funktion das die Daten von diesem Formular ins Auftragsformular übergeben werden..mit einem Nachteil..bisher wird mir dann der letzte Auftrag von diesem Kunden angezeigt dann.Wie kann ich das unterbinden?

    4.Wie bekomme ich es hin, das wenn ich vom Kundenformular die Daten per Button übergebe, das entsprechende Formualr sich öffnet aber indem Atemzuge sich das Kundenformular automatisch schließen soll.

    Sodele...ähm ja... das wäre es erstmal*Smilie

    Ich hoffe ich bin nicht zu frech mit soviel Fragen aufeinmal..*wink.gif* und hoffe es ist ok das ich die DB bei Rapidshare hinterlegt habe....


    So muchas gracis im Vorwege...und büüde wenn..erklärt es für ein echte Anfänger*Smilie)

    grüßerle

    mario

    :)
     
    MarioGabler, 27. Mai 2008
    #1
  2. Hallo Mario,

    ehrlich gesagt finde ich das Suchbild bei rapidshare eine Zumutung - entweder kann ich die Katzen nicht enttarnen oder die "Buchstaben" nicht entziffern. *rolleyes.gif*
    Wenn du mal auf die Hintergrundgrafiken in den Formularen verzichten könntest, wäre das Hochladen der gezippten Datei auch kein Problem!

    Was die Tabellen betrifft, so würde ich auf Nachschlagefelder prinzipiell verzichten. Einiges an den Auftragsdaten würde ich anders anlegen, z.B. die Sache mit dem Tanken und den Spritsorten. Da könnte ein Feld genügen, das mit Hilfe einer Schlüsseltabelle gefüllt wird: 0=nicht Tanken, 1=Benzin, 2=Super, etc., das ließe sich dann im Formular mit einer Optionsgruppe gut darstellen. Dies hat weniger etwas mit der Performance zu tun als mit der Flexibilität und Wartungsfreundlichkeit.

    Auch bin ich kein Fan von Gültigkeitsregeln, die Plausibilitätsprüfungen sollten besser vom Erfassungsformular übernommen werden. Auch sollte die Formulargröße nach Möglichkeit eine Bildschirmseite nicht überschreiten, wobei nicht unbedingt von höchster Auflösung und neuestem Modell ausgegangen werden sollte. *wink.gif*

    Soweit fürs erste...
     
    Anne Berg, 29. Mai 2008
    #2
  3. Hallo Mario,

    zu 1.) Die Anzahl der Tabellen hat nichts oder kaum mit Performance zu tun, sie orierntiert sich an der Art der Daten und ihrer Normalisierung. Das bedeutet, dass eine Information nur einmal in einer DB gespeichert werden soll. Um dies zu erreichen kann es notwendig sein, zusätzliche Tabellen anzulegen. Das Datenmodell hat aber IMHO Priorität vor Performencefragen.

    zu 2.) Im Auftragsformular im entsprechenden Feld und dort in der Ereigniseigenschaft 'Vor Aktualisierung' stellst Du per VBA einen Vergleich des ältesten vorhandenen Datums und dem eingegebenen Datum an.
    Das älteste Datum ermittelst DU mit der Funktion 'DMax'. Den Vergleich stellt man mit einer If-Then-Else-Anweisung an. Wenn der Vergleich nicht den gewünschten Kriterien entspricht, kannst DU den Vorgang abbrechen und eine Meldung ausgeben.

    zu 3.) Kann ich nichts zu sagen, Kann mit Deinem Link nichts anfangen und die DB nicht einsehen. Folge mal dem Rat von Anne und speck für's Forum das Teil mal ab, Bilder kannst später wieder reinsetzen.

    zu 4.) Evtl. mit der DoCmd.Methode? DoCmd.Open // DoCmd.Close ?????
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Storch, 29. Mai 2008
    #3
  4. Meine Frage zu meiner Datenbank:)

    Moin Anne
    Moin Storch,

    muchas Graicas mal eben auf die Schnelle....bin auf der Arbeit....ähm ja mit den Bilder..sorry Leutz..spät Abends bin ich nicht mehr zu gebrauchen..Mea Culpa..im Anhang jetzt mal die "Thin" Variante*Smilie

    Ähm Anne...sorry aber deine Idee mit den benzinsorten..versteh ich leider nicht so ganz...Mag darin liegen das ich eher Netzwerkhoschi bin als DB Programmier...Magst mir das nochmal bisle erläutern...wäre nett.

    Wenn ich nacher mehr Zeit habe melde ich mihc nochmal....

    Grüßerle erstmal

    Mario
     
    MarioGabler, 29. Mai 2008
    #4
  5. Hallo,
    die Beziehunen scheinen mir so nicht richtig. Das das Auto ja fest dem Kunden zugeordnet ist, kann man auf die Kundennummer in der Auftragsliste eigenlich verzichten. Der Autoliste würde ich einen Autowert spendieren (AutoID) und dieses Feld dann in der Auftragsliste als Fremdschlüssel führen. Das Kennzeichen indizieren mit Duplikate=Nein, nicht als Primärschlüssel.
     
    gpswanderer, 29. Mai 2008
    #5
  6. Hiho,
    würde das nicht bedeuten das pro Kunde nur ein Auto zur Verfügung steht? Es kann nämlich sehr gut angehendas pro Kunden 2 oder mehr Wagen verwaltet werden müssen....

    Oder versteh ich es grad nciht..*wink.gif*


    Mario
     
    MarioGabler, 29. Mai 2008
    #6
  7. Nicht wenn Du eine 1:n Beziehung hast... bedeutet ein Kunde mit n-Autos.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Storch, 29. Mai 2008
    #7
  8. Meine Frage zu meiner Datenbank:)

    Hallo,
    nein, es gibt ein Kunde der hat mehrere Autos = 1:n Von diesen einen (oder auch mehreren) Autos kommt eines (oder auch 2) in die Auftragsliste. Auch 1:n In dieser Auftragsliste steht die AutoID und über die AutoID der Autoliste hast Du den Kunden. Die Beziehung zwischen Kunde und Auftragsliste muss raus. Auch weil Du auf diese Art nicht aktualisierbare Abfragen kriegst.
     
    gpswanderer, 29. Mai 2008
    #8
  9. Mal so eben gefragt..wie bekomme ich da smit Fremdschlüssel hin?

    Mario

    Erweiterung: Wäre das so wie im Anhang nun besser?
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    MarioGabler, 29. Mai 2008
    #9
  10. Hallo,
    die n-Seite (liegende Acht) ist das Fremdschlüsselfeld.
    Beziehunegn neu siehe Bild.
    Ein Kunde kann mehrere Autos haben und ein Auto mehrere Aufträge.
     
    gpswanderer, 29. Mai 2008
    #10
  11. Hallo,
    Du hast es ja schon fast richtig. Referentielle Integrität noch einstellen. In der Auftragsliste das Feld Kundennr löschen. Kennzeichen in der Autoliste indizieren (Duplikate=Nein)
     
    gpswanderer, 29. Mai 2008
    #11
  12. Du hast eine Tabelle KUNDEN und eine AUTO (ich nenn sie mal so, kann Deine DB nicht einsehen, hab nur Acc2000)

    In Tab KUNDEN hast Du die KundenID als Primärschlüssel. Nun legst DU in der Tabelle AUTO ein neues Feld an. KundenID is bestimmt Autowert, dann muss das neue Feld vom Typ ZAHL sein. Ich benenne meine Fremdschlüsselfelder immer mit dem Präfix 'F_', wäre also in diesem Fall 'F_KundenID'. Dieses Feld solltest DU indizieren aber ohne Duplikate und nun stellst DU im Beziehungsmanager eine Beziehung von KundenID nach F_KundenID her. Schon hast DU eine 1:n Beziehung. Du solltest noch Lösch und Aktualisierungsweitergabe aktivieren. Und fertich ist die Beziehung.

    Lass Dir von nem Anfänger, der ich im Grunde auch noch bin, sagen, dass Du Dich mit Datenmodellen, der Modellierung/Normalisierung von Daten, den Beziehungen etc. auseinander setzt, sonst wirst DU bei umfangreicheren Vorhaben schnell stecken bleiben.
     
    Storch, 29. Mai 2008
    #12
  13. Meine Frage zu meiner Datenbank:)

    gpswanderer, 29. Mai 2008
    #13
  14. Ähm, also so denne*Smilie

    Hoffe doch*Smilie....

    Grüßerle Mario

    Ops Storch dein zu spät gesheen..mom..das lese ich mir grad durch
     
    MarioGabler, 29. Mai 2008
    #14
  15. Wie kann ich es dann hinbekommen im Unterformular Auftrag...das Kennzeichen zu übernehmen?
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    MarioGabler, 29. Mai 2008
    #15
Thema:

Meine Frage zu meiner Datenbank:)

Die Seite wird geladen...
  1. Meine Frage zu meiner Datenbank:) - Similar Threads - Frage Datenbank

  2. Outlook Neuling - Fragen

    in Microsoft Outlook Hilfe
    Outlook Neuling - Fragen: Hallo ihr Wissenden, fange gerade mit Outlook an und es hakt etwas. Konfiguration: Outlook im Firefoxbrowser, bisher wurden die Mails mit Thunderbird abgerufen Outlook lokal aus dem Officepaket....
  3. Outlook: Mailinglisten erstellen und andere Fragen

    in Microsoft Outlook Hilfe
    Outlook: Mailinglisten erstellen und andere Fragen: Ich habe mal ein paar Fragen zu Outlook. Ich nutze es zu Hause und auf der Arbeit. An beiden Geräten habe ich "Office 365", bzw. auf Arbeit "Office 365 ProPlus". Allerdings habe ich immer so das...
  4. FRAGE: Wenn(oder ; Wenns

    in Microsoft Excel Hilfe
    FRAGE: Wenn(oder ; Wenns: Hallo liebe Excel Legenden. Ich zerbreche mir jetzt schon seit Stunden den Kopf. Folgende Situation: Spalte A Tätigkeit Spalte B Anzahl Max Spalte C Anzahl Min Wenn ich jetzt bei Tätigkeit in...
  5. Fragen beim Aufbau einer Datenbank

    in Microsoft Access Hilfe
    Fragen beim Aufbau einer Datenbank: Moin, Ich habe in meiner DB eine Verknüpfung auf eine externe Excel-Tabelle. Diese Tabelle möchte ich komplett in eine Abfrage übernehmen, zusätzlich soll die Abfrage noch weitere Felder...
  6. Fragen zur ER-Modellierung einer Veranstaltungs-Datenbank

    in Microsoft Access Hilfe
    Fragen zur ER-Modellierung einer Veranstaltungs-Datenbank: Hallo in die Runde, ich habe eine weiter Datenmodellierungs-Frage: Es wurde sich eine Veranstaltungs-Datenbank gewünscht: • 1.) Referenten • Vor/Nachname • Institution • Adresse • E-Mail •...
  7. Neue Datenbank / Fragen zum Handling, Aufbau

    in Microsoft Access Hilfe
    Neue Datenbank / Fragen zum Handling, Aufbau: Hallo erstmal, zunächst einmal möchte ich mich kurz vorstellen: Ich heiße Jörg, komme aus dem schönen Frankenland und betreibe in meiner Freizeit aktiv Musik. Da ich seit einiger Zeit in 2...
  8. Frage zum Aufbau einer umfangreichen Datei/Datenbank

    in Microsoft Excel Hilfe
    Frage zum Aufbau einer umfangreichen Datei/Datenbank: Moin moin, auf der Arbeit stehe ich mal wieder vor einer etwas umfangreicheren Aufgabe. Ich muss ein "Provisorium" erstellen, mit dem wir arbeiten können bis die originale Software mal...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden