Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Abfrage optimieren

Diskussion: Abfrage optimieren im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Ich bin nicht gerade das, was man als Datenbank-Guru bezeichnen wuerde, daher hoffe ich mal dass sich hier jemand ...

Antwort
Alt 24.07.09, 20:18   #1 (permalink)
 
Registriert seit: 06.01.07
keksinat0r Leistung: Facit NTK
Likes: 0
Standard Abfrage optimieren

Anzeige

Ich bin nicht gerade das, was man als Datenbank-Guru bezeichnen wuerde, daher hoffe ich mal dass sich hier jemand finden laesst der mir sagen kann ob sich folgende Abfrage noch ein wenig optimieren laesst:

Code:
select
	permissions.id
from users

left join users_permissions
       on users_permissions.user = users.id

left join users_roles
       on users_roles.user = users.id

left join roles_permissions
       on roles_permissions.role = users_roles.role

left join permissions
       on permissions.id = users_permissions.permission
       or permissions.id = roles_permissions.permission

where users.id = 0815

group by (permissions.id)
order by (permissions.id) ASC;
Es gibt 6 Tabellen:
Code:
 - users
 - roles
 - permissions
 - users_roles
 - users_permissions
 - roles_permissions
Die Namen sollten selbsterklaerend sein. Fall nicht:
Erklaerung   

Ein User (users) soll Berechtigungen (permissions) sowohl ueber die Gruppe(n) (roles) der/denen er zu zugeordnet ist (roles_permissions), als auch individuell dem user zugeordnete (users_permissions) Berechtigungen erhalten.

users
  • Die Usertabelle mit Grundlegenden informationen ueber den User.
  • Spalten: id, name, ...
  • Primaerschluessel: id
  • Fremdschluessel: -

roles
  • Die Tabelle mit den Berechtigungsgruppen
  • Spalten: id, name, ...
  • Primaerschluessen: id
  • Fremdschluessel: -

permissions
  • Die Tabelle mit den Verfuegbaren Berechtigungen
  • Spalten: id, name, ...
  • Primaerschluessen: id
  • Fremdschluessel: -

users_roles
  • Die Tabelle die die User den Gruppen zuordnet (M zu N Beziehung)
  • Spalten: user, role
  • Primaerschluessen: (user, role)
  • Fremdschluessel: user => users.id, role => roles.id

users_permissions
  • Die Tabelle die die User den Berechtigungen zuordnet (M zu N Beziehung)
  • Spalten: user, permission
  • Primaerschluessen: (user, permission)
  • Fremdschluessel: user => users.id, permission => permissions.id

roles_permissions
  • Die Tabelle die die Gruppen den Berechtugungen zuordnet (M zu N Beziehung)
  • Spalten: role, permission
  • Primaerschluessen: (role, permission)
  • Fremdschluessel: role => roles.id, permission => permission.id

(ich habe auf die schnelle kein Programm gefunden mit dem ich ein ordentliches ER-Modell erstellen kann. Daher mal in Textform)


MfG
- Keks
keksinat0r ist offline   Mit Zitat antworten
Alt 11.09.09, 21:33   #2 (permalink)
Easyrider
Guest
 
Likes:
Standard RE: Abfrage optimieren

Bau dir einen View im SQL Server der kann das intern schneller abhandeln.
  Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 11.09.09, 21:47   #3 (permalink)
Senior Member
 
Benutzerbild von odigo
 
Registriert seit: 25.12.04
odigo Leistung: 8086odigo Leistung: 8086
odigo eine Nachricht über ICQ schicken
Likes: 54
Standard

Ich rate jetzt einfach mal daß du MySql benutzt. Google mal nach MySql Explain. Das zeigt dir die schwächen deines Selects. Ich geh mal davon aus daß du Indezes angelegt hast.

odigo
odigo ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Abfrage optimieren
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
durchnummerierung optimieren easteregg (Web-) Design und webbasierte Sprachen 2 14.11.09 22:09
Website für Suchmaschinen optimieren Hashishin Internet Allgemein 13 01.01.07 13:43
Grafikkarte ( GeForce ) optimieren Cube Hardware Probleme 5 21.10.05 14:13
Startvorgang von WindowsXP optimieren Erazer Windows 5 05.06.02 18:25
DSL f??r XP optimieren maedmexx Windows 9 01.12.01 03:06


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61