Schrift
[thread]12032[/thread]

Echter Timestamp?



<< >> 10 Einträge, 1 Seite
roooot
 2008-06-17 16:28
#111146 #111146
User since
2008-03-03
276 Artikel
BenutzerIn
[default_avatar]
Hallo,

kann ich auch in der MySQL Datenbank einen echten Unix Timestamp speichern?
Laut Doku unterscheiden sich ja Datetime und Time nur minimalst.

Muss ich den Umweg über Tinytext gehen und auf die Komfortfunktion Now und vergleiche auf MySQL Seite verzichten?
Viele Grüße :)
Taulmarill
 2008-06-17 16:40
#111147 #111147
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
Du könntest einfach die Ausgabe der Perlfunktion time als integer speichern.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
renee
 2008-06-17 16:41
#111148 #111148
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Warum speicherst Du es nicht als DATETIME?
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
roooot
 2008-06-17 16:56
#111149 #111149
User since
2008-03-03
276 Artikel
BenutzerIn
[default_avatar]
Habe es jetzt gemacht wie Taulmarill es auch vorgeschlagen hatte.
Habs als int(9) gespeichert und übergebe time() von Perl aus.

Datetime könnte man vllt auch nehmen, aber ich finde es einfacher mit timestamps zu rechnen.



Nebenbei kann mir jemand sagen warum die if-Bedingung wahr ist?
Code (perl): (dl )
1
2
3
4
my $foo = 0;
if(!$foo) {
  croak "aaargh";
}


wenn $foo = 1 ist gehts..
Viele Grüße :)
scriptor
 2008-06-17 17:21
#111151 #111151
User since
2008-05-07
69 Artikel
BenutzerIn
[Homepage] [default_avatar]
Verstehe nicht:

Code: (dl )
!0 ist wahr


Was ist Dein Problem?
roooot
 2008-06-17 17:24
#111152 #111152
User since
2008-03-03
276 Artikel
BenutzerIn
[default_avatar]
argh
Viele Grüße :)
Struppi
 2008-06-17 18:04
#111153 #111153
User since
2006-02-17
628 Artikel
BenutzerIn
[Homepage]
user image
roooot+2008-06-17 14:56:06--
Datetime könnte man vllt auch nehmen, aber ich finde es einfacher mit timestamps zu rechnen.
Dann kennst du offensichtlich nicht die mannigfaltigen Date/Time Funktionen: http://dev.mysql.com/doc/refman/5.0/en/date-and-ti...
i.d.R. ist es sinnvoller mit Datetime zu arbeiten, dann kannst du viel Rechenarbeit dem mysql Server überlassen.
GwenDragon
 2008-06-17 18:42
#111154 #111154
User since
2005-01-17
14783 Artikel
Admin1
[Homepage]
user image
Bloss keine eigenen Routinen/Datenformate nehmen. Wenn du später mal was migrieren musst und die Daten in SQL-Server-internen Formaten speicherst, erleichterst du dir oder den nächsten Admins das Leben.
roooot
 2008-06-17 19:03
#111155 #111155
User since
2008-03-03
276 Artikel
BenutzerIn
[default_avatar]
Ok, dann werde ich wohl das DateTime setzen.

Kenne mich mit SQL aber nicht so gut aus. Ich hab Beispielsweise folgenden Stamp:
jetzt = 2008-06-17 16:56:37.

Nun will ich alle Einträge finden, die für den obigen Wert
jetzt - variable in Minuten (1...240 Minuten) größer sind (aktueller)


Wie muss das Query aussehen?
SELECT * FROM `foo` WHERE `Datetime` > NOW()-INTERVAL variable MINUTE
Viele Grüße :)
Struppi
 2008-06-18 10:26
#111162 #111162
User since
2006-02-17
628 Artikel
BenutzerIn
[Homepage]
user image
eher,
DATE_SUB(CURDATE(),INTERVAL MINUTE)) < ´Datetime´

Das ist direkt das erste Beispiel auf der Seite die ich dir gezeigt habe.
<< >> 10 Einträge, 1 Seite



View all threads created 2008-06-17 16:28.