Zum Inhalt springen

MySQL: Datensätze bei n:m Beziehung verknüpfen?


Empfohlene Beiträge

Geschrieben

Hallo,

ich habe folgendes Datenbankmodell:

Benutzertabelle mit den Spalten "ID" und "Benutzername"

Rechtetabelle mit den Spalten "ID" und "Recht"

Beziehungstabelle zwischen den beiden Tabellen mit den Spalten "BenutzerID" und "RechtID"

Wenn ich nun den Benutzernamen und das Recht welches ihm zugeordnet werden soll gegeben habe, mit welchem SQL Code kann ich dann diese beiden Datensätze über die Beziehungstabelle verknüfen?

Danke!

Gruß,

Andreas

Geschrieben

wenn ich dich richtig verstanden habe, musst du das so machen:


SELECT 

  benutzer.Benutzername, 

  rechte.Recht 

FROM 

  benutzer, 

  rechte, 

  beziehung 

WHERE 

  benutzer.id = beziehung.BenutzerID

 AND 

  rechte.id = beziehung.RechtID

so sollte es ungefähr funktionieren! Das du die Rechte vom Benutzer erhälst

Geschrieben

Hallo,

ja so funktioniert das Auslesen der Rechte! Das hatte ich auch schon herausgefunden :) Aber wie funktioniert nun das Zuweisen?

Ich habe den Benutzer "user1" und das Recht "lesen". Beide stehen bereits in den Tabellen. Nun muss ich mit einer SQL Abfrage beide ID's herausfinden und diese dann in die Beziehungstabelle eintragen. Wie funktioniert das?

Gruß,

Andreas

Geschrieben

Ja, mit einem Script ist das Leicht! So habe ich es auch bereits gelöst! Allerdings dachte ich, dass man das auch komplett in SQL machen kann (ID's herausfinden und eintragen) - oder ist das falsch?

Gruß,

Andreas

Geschrieben

das geht nicht, höchstens du hast nur ein Recht, dann hat das Recht ja jeder!

Wenn du mehrere Rechte hast, z. B. Lesen, Schreiben, Löschen, usw. hast, dann brauchst du auf jeden Fall die Beziehungstabelle um zu unterscheiden wer welches Recht hat. Sonst geht das nicht!

  • 2 Jahre später...
Geschrieben

Hallo schmiddi,

beschäftige mich zur Zeit ebenfalls mit einer Verknüpfungstabelle ähnlicher Art und bin verzweifelt auf der Suche nach einem script, um mit einem insert die Beziehungstabelle zu beschreiben. Kannst Du mir mit einem solchen script netterweise behilflich sein?

VG

beefheart

Geschrieben

Ok, mal ein wenig zurückrudern ....

Was genau wollt ihr bewerkstelligen ?

Fall 1

Du hast gewisse Rechte, ala "lesen", "schreiben", "löschen" etc

Fall 2

Deine Rechte sind mehr oder weniger User Groups, mit Bezeichnung, die dann eben über ihre User Group diverse Rechte hat, wovon dann jeder User auch in mehreren sein kann.

Als nächstes, sql befehle werden auch gern als Script bezeichnet, was ist bei dir ein "script" ?

Die Sache ist die, beschreib mal bitte detailiert, das Umfeld, was hast du an User eingaben, und wohin willst du dann mit dem sql etc.

Dann kann man dir da weiterhelfen. Und recht unabhänig davon was du vor hast, wenn man UDT`s und stored procedures mit reinrechnest, da kannst du alles was du mit daten machen willst per sql direkt auf dem server lösen.

Gruß

Sven

Geschrieben

Hallo,

danke für die schnelle Antwort.

was ich suche ist ein php-script (Formular) rein für den Administrator, also alle Rechte inbegriffen.

Hintergrund kurz skizziert:

Ein Kursblegungsplan mit den Tabellen (Studenten, Kurse, Kursbelegung)

Hierüber möchte ich mittels eines Formulars (Auswahlliste f.d. Studenten) und (Checkboxen f.d. Kurse) die entsprechenden Kurse markieren und in die DB laden.

Es werden mehr als 50 Kurse angeboten, deshalb ist es für mich sehr unübersichtlich die Studenetn mit ihren belegten Kursen als Bsp.(INSERT INTO Kursbelegung VALUES (1,4); direkt im phpmyadmin einzugeben.

Hoffentlich reichen meine Angaben aus meine Problemstellung zu erfassen.

Vielen Dank

beefheart

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...