Beantwortet Datenbank Beziehungen

  • Freitag, 23. November 2012 13:55
     
     

    Hallo MSDN-Forum,

    ich habe folgende verständliche Schwierigkeit:

    Ich habe eine Website in der sich Benutzer anmelden können. Dazu habe ich in MsSQL eine Tabelle user. Diese Benutzer können sich in Seminare einschreiben (Tabelle seminars). Die Grundidee ist für eine Universität in der Benutzer über das Web Dateien zu ihren Seminaren runter- und hochladen können.

    Folgende Regeln bekomme ich nicht abgebildet:

    Ein Benutzer kann in meherern Seminaren sein.
    Ein Seminar kann meherer Benutzer enthalten.

    Mein erster Versuch ist darin geendet, dass ein Benutzer eine GUID in der Tabelle hat und das Seminar die GUID des Benutzers beinhaltet. So kann ein Seminar aber auch nur ein Benutzer enthalten.

    Erbitte um Lösung meines Problems
    Danke im Vorraus


    MfG ASkuN

Alle Antworten

  • Freitag, 23. November 2012 14:17
     
     

    Hallo,

    hier brauchst Du eine zusätzliche m:n Tabelle, die abbildet, welcher Benutzer (m) in welchen Seminaren (n) ist:

    Tabelle Benutzer: BenutzerID = PrimaryKey
    Tabelle Seminar: SeminarID = PrimaryKey

    Tabelle BenutzerSeminare: BenutzerID + SeminarID = PrimaryKey


    Olaf Helper

    Blog Xing

  • Freitag, 23. November 2012 14:28
     
     

    Hallo Olaf,

    erstmal danke für die schnelle Antwort.

    Habe das jetzt in der MySQL Datenbank soweit umgesetzt, nur wie spreche ich das ganze jetzt aus ASP.Net über den CodeBehind an?


    MfG ASkuN

  • Freitag, 23. November 2012 15:05
    Moderator
     
     

    Hi,

    was genau meinst Du? Die Verbindung zum MySQL Server? Oder was anderes?

    Für ersteres schau mal hier:

      http://www.mysql.de/downloads/connector/net/


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

  • Freitag, 23. November 2012 15:18
     
     
    Naja ich glaube ich habe das verständliche Problem wie man auf diese Struktur dann zugreift

    MfG ASkuN

  • Freitag, 23. November 2012 15:27
     
     

    Hallo

    das steht hier ganz gut beschrieben.

    http://code-inside.de/blog/2007/11/27/howto-datenbankverbindungen-net-mysql/

    Liebe Grüße, die Luzie!

  • Freitag, 23. November 2012 15:28
     
     Beantwortet Enthält Code

    Meinst Du, wie das SQL Statement für eine Abfrage aussieht? Vom Grundaufbau her so:

    SELECT *
    FROM Benutzer AS B
         INNER JOIN
         BenutzerSeminare AS BS
             ON B.BenutzerID = BS.BenutzerID
         INNER JOIN
         Seminare AS S
             ON S.SeminarID = BS.SeminarID
    WHERE ...
       -- B.BenutzerID = 1; für alle Seminare eines Benutzers
       -- S.SeminarID = 1; für alle Benutzer eines Seminares


    Olaf Helper

    Blog Xing

    • Als Antwort markiert ASkuN Freitag, 23. November 2012 15:32
    •  
  • Freitag, 23. November 2012 15:32
     
     
    Perfekt Olaf das hab ich gesucht danke :)

    MfG ASkuN