Hi, ich arbeite gerade mit Visual Studio 2008 an nem kleinen Programm für die Bearbeitung von Datenbankeinträgen, das Programm soll, wenn man einen vorhandenen Datenbankeintrag bearbeitet alle 5 Sekunden die aktuelle Zeit in die Datenbank eintragen, bis man die Bearbeitungen abspeichert, was es auch bereits erfolgreich macht. Das ganze soll als Sicherheit dienen, dass nicht 2 Benutzer den gleichen Eintrag editieren.
Das Problem ist nun die Abfrage wenn man auf den editieren Button klickt, ich frage dann halt die Datenbank nach dem Eintrag mit dem Primärschlüssel X (also kann wenn überhaupt nur der Eintrag gefunden werden der gewünscht ist) bei dem das Datum länger her ist als 5 Sekunden, und genau da ist das Problem. Die Abfrage hab ich erstellt, doch ich versteh nicht wie ich die Abfrage ausführen bzw. das Ergebnis überhaupt verwerten soll.
Die Abfrage funktioniert wie gesagt, wenn ich sie im Visual Studio selbst mit Daten fütter, aber wie genau baue ich diese Abfrage in den Code mit ein? Wenn ich das mehr oder weniger automatisch machen lasse von Visual Studio kommt halt ne Fehlermeldung.
Abfrage ist:
[highlight=sql]SELECT ID
FROM Testtable
WHERE (ID = @IDBearbeitung) AND (Bearbeitung < GETDATE() - 0.000005)[/highlight]
Das funktioniert soweit auch, ID ist halt der Primärschlüssel und Bearbeitung das Datum.
[highlight=c#]this.testtableTableAdapter.GetBearbeitung(TestIDte mp);[/highlight]
Das ist so ziemlich alles was ich davon habe im Code, abgesehen von der Fehlermeldung kanns natürlich noch nicht funktionieren, denn ich hab keinen Plan was überhaupt falsch sein könnte an der Ausführung (warum die Fehlermeldung kommt) sowie keinen Plan wie ich, sollte sie funktionieren, überhaupt abfrage ob denn ein Ergebnis kam oder nicht.
Das Problem ist nun die Abfrage wenn man auf den editieren Button klickt, ich frage dann halt die Datenbank nach dem Eintrag mit dem Primärschlüssel X (also kann wenn überhaupt nur der Eintrag gefunden werden der gewünscht ist) bei dem das Datum länger her ist als 5 Sekunden, und genau da ist das Problem. Die Abfrage hab ich erstellt, doch ich versteh nicht wie ich die Abfrage ausführen bzw. das Ergebnis überhaupt verwerten soll.
Die Abfrage funktioniert wie gesagt, wenn ich sie im Visual Studio selbst mit Daten fütter, aber wie genau baue ich diese Abfrage in den Code mit ein? Wenn ich das mehr oder weniger automatisch machen lasse von Visual Studio kommt halt ne Fehlermeldung.
Abfrage ist:
[highlight=sql]SELECT ID
FROM Testtable
WHERE (ID = @IDBearbeitung) AND (Bearbeitung < GETDATE() - 0.000005)[/highlight]
Das funktioniert soweit auch, ID ist halt der Primärschlüssel und Bearbeitung das Datum.
[highlight=c#]this.testtableTableAdapter.GetBearbeitung(TestIDte mp);[/highlight]
Das ist so ziemlich alles was ich davon habe im Code, abgesehen von der Fehlermeldung kanns natürlich noch nicht funktionieren, denn ich hab keinen Plan was überhaupt falsch sein könnte an der Ausführung (warum die Fehlermeldung kommt) sowie keinen Plan wie ich, sollte sie funktionieren, überhaupt abfrage ob denn ein Ergebnis kam oder nicht.
Comment