AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Zeit + Datenbank + grosses Durcheinander
Thema durchsuchen
Ansicht
Themen-Optionen

Zeit + Datenbank + grosses Durcheinander

Ein Thema von hirnstroem · begonnen am 10. Feb 2007 · letzter Beitrag vom 12. Feb 2007
Antwort Antwort
Seite 1 von 2  1 2      
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#1

Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 10:36
Datenbank: Access • Zugriff über: ADO
'loha Folks,

in einer Access Datenbank ist die Zeit eines bestimmten Ereignisses abgespeichert. Ich möchte nun verhindern, dass das nächste Ereignis frühestens nach 15 Sekunden eingetragen werden kann (alle Ereignisse dazwischen werden verworfen).

Nun schaffe ich es nicht zu überprüfen ob die 15 Sekunden bereits vorbei sind oder nicht.

Den folgenden Code führe ich aus, sobald ich überprüfen möchte ob 15 Sekunden vergangen sind:

  StringTime := FieldByName('Time').Value; // StringTime schaut dann so aus '10.02.2007 11:08:31' und ist auch wirklich ein String Mit der StrToDateTime Routine sollte es ja jetzt möglich sein, den String in ein Datum mit Zeit zu "convertieren" und mit Trunc sollte sich doch dann auch die Zeit extrahieren lassen, also etwas in dieser Art:

  EntryTime := Trunc(StrToDateTime(StringTime)); EntryTime ist aber stets 0 und ich weiss nicht wie weiter. Hilfe?!?
inde deus abest
  Mit Zitat antworten Zitat
Benutzerbild von chericks
chericks

Registriert seit: 12. Jun 2003
Ort: Weyhe
27 Beiträge
 
Delphi 10.3 Rio
 
#2

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 11:06
Sitze gerade im Internetcafe und habe somit kein Delphi zur Hand, aber versuch es mal mit:

var
EntryTime:tdatetime;
begin
EntryTime:= FieldByName('Time').asdatetime;

if EntryTime+((1/24/60/60)*15)>=now then
begin
//neuer Datensatz darf angelegt werden
end;
end;
Christian Hinrichs
  Mit Zitat antworten Zitat
ManuelR

Registriert seit: 14. Dez 2005
Ort: Backnang
57 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 11:09
Hallo,

so müsste es gehen (ungetestet)

if (now - FieldByName('Time').asdatetime) > (15/(60*60*24)) then
15 sekunden vorbei
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 11:30
Irgendwie scheitert die Sache schon bei...

  EntryTime:= FieldByName('Time').AsDateTime EntryTime ist immer 0. Aber wie gesagt...

  StringTime := FieldByName('Time').Value; // StringTime schaut dann so aus '10.02.2007 11:08:31' und ist auch wirklich ein String ^^ das funktioniert dann aber wieder.
inde deus abest
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 11:38
Welchen Typ hat Time in der Datenbank?
Markus Kinzler
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 11:47
Time ist in der Datenbank als Datum/Uhrzeit deklariert.
Format: Zeit, lang (00:00:00;0;_)

Soll ich die Zeit als Text in der Datenbank abspeichern?
inde deus abest
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 11:49
Nein, es sieht aber aus, als sei es als Text gespeichert.
Markus Kinzler
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 12:10
Also, weder in der Felddefinition (ADO) noch in der Access-Datenbank wird die Zeit als Text verwertet.

Datum/Uhrzeit <- etwas anderes gibt es in Access nicht
ftDateTime <- ist die Definition des Feldes ADO-Seitig
inde deus abest
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 12:16
Dann versuch mal den Wert des Feldes direkt einer Time-Variablen zuzuweisen
Markus Kinzler
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Zeit + Datenbank + grosses Durcheinander

  Alt 10. Feb 2007, 12:29
Auch dann ist die "EntryTime" stets 0. Wahrscheinlich liegt es daran, dass ich irgendetwas übersehe. Werde einmal darüber schlafen und dann das Ganze nochmals versuchen.

Vielen Dank soweit!
inde deus abest
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz