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

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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...