Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

SQL/PHP dauerhafte Abfrage





Frage

Hallo zusammen, zu meiner Situation: Ich habe eine MSSQL 2000 Datenbank auf einem W2k Server laufen. In dieser Datenbank ändern sich bestimmte Stati von Geräten. Es kann vorkommen das sich in 1-2 sekunden 20-30 Stati ändern. Dann wieder 5minuten nichts etc... Dies möchte ich gerne in Form einer Website visualisieren. Also so zu sagen ein Live View generieren, welches Gerät gerade in welchen Status ist. Wie realisiere ich so was am besten, um die Datenbank nicht total lahm zu legen. Auch wäre es schön, wenn ich nicht alle 1-2 sekunden nen totalen Refresh machen müsste, sondern wenn sich nur das betroffene Feld ändert. So zu sagen einen Push der Daten mache.... Hat da jemand eine IDEE wie ich das hinbekomme? Vielleicht in PHP oder so? Danke für eure Hilfe!

Antwort 1 von RalfH

Hallo BlackUser,

Es gibt viele Wege die nach Rom führen ;-)
Einer davon könnte darinn bestehen, das Du einen Trigger über die entsprechende Tabelle laufen lässt, der bei dem Ereignis UPDATE dann eine entsprechende Abfrage ausführt, und diese Abfrage dann dem Frontend zu verfügung stellt.
Man müsste allerdings Überlegen wieviele Daten so im Schnitt anfallen, sollten es zuviele sein, könnte man über einen Zeitintervall nachdenken.

Womit jetzt dieses Frontend erstellt wird, ist im Grundegenommen von deinen Vorlieben abhängig ( PHP, DotNet, Java, MS Access, usw.)

Gruß Ralf

Antwort 2 von Supermax

Das für Webseiten verwendete HTTP-Protokoll ist prinzipiell "stateless", d.h. hier geht nur ein "Polling" - man kann den Transferaufwand nur durch z.B. Ajax etwas verringern, indem nur ein kleines JavaScript auf der Seite alle 5 Sekunden ein Script abfragt, ob mindestens eine Statusänderung vorliegt, und nur wenn dies der Fall ist, einen Refresh der Seite bzw. der entsprechenden Elemente anstößt.

Antwort 3 von BlackUser

Vielleicht ist das ja bisher noch ne Nummer zu hoch.,.. Aber wie funktioniert das mit den Triggern?

Ist das schwer? Kennt jemand eine gute Anleitung?


Grüße