Usage d'un timestamp ?

olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 - 24 avril 2008 à 20:22
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 - 26 avril 2008 à 23:16
Bonjour


J'avais pensé naivement que le fait de declarer un timestamp dans une table faisait que le DBE automatiquement modifiait cette date a chaque modif du record


Je viens de constater avec Csharp et MySql connector qu'il n'en est rien


Je dois donc explicitement changer la date a la main
Dans ce cas, je ne comprends pas bien l'usage d'un timestamp par rapport a un datetime


 

5 réponses

billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
25 avril 2008 à 08:48
Bonjour,

Concernant le TimeSpan et DateTime c'est très simple:
TimeSpan = intervalle de temps. Exemple: 255jours 18heures 24min 3sec
DateTime = date précise. Exemple: 1 Février(2) 1999 à 4heures 5min 10sec
(je passe les millisecondes ^^)

A partir de là, c'est une question de logique:
Prenons des objets (non initialisé pour l'exemple)
DateTime date1, date2;
TimeSpan time1, time2, time3;
Addition avec deux DateTime [date1.Add(date2)] = impossible !
Soustraction avec deux DateTime TimeSpan> time1 = date1.Substract(date2);
Addition d'un DateTime avec un TimeSpan DateTime> date2 = date1.Add(time1);
Soustraction d'un DateTime avec un TimeSpan DateTime> date2 = date1.Substract(time1);
Addition de deux TimeSpan TimeSpan> time3 = time1.Add(time2);
Soustraction deux TimeSpan TimeSpan> time3 = time1.Substract(time2);
Addition d'un TimeSpan avec un DateTime [time1.Add(date1)] = Impossible !
Soustraction d'un TimeSpan avec un DateTime [time1.Substract(date1)] = Impossible !

Pour le reste, tu as à peu près accès aux même informations:
- Year (que DateTime, car un intervalle "ne pas se calculer en année": sauf si on dit que tous les ans ont 365jours, ce qui n'est pas vrai ^^)
- Month (que DateTime, même raison qu'au dessus: tous les mois n'ont pas 31 jours)
- Day (DateTime et TimeSpan. Et on me parle pas de la journée où on retire ou ajoute une heure svp lol. Cette journée n'existe pas pour tous les pays ^^)
- Hour (DateTime et TimeSpan)
- Min (DateTime et TimeSpan)
- ToString()
- Etc...

N'oublies pas, tu as accès à la date du jour avec :
DateTime now = DateTime.Now;

Voila, je ne sais pas si ca a été clair ou pas mais j'ai essayé.

Bonne journée,

Billou_13
0
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 5
25 avril 2008 à 09:01
Merci Bilou_13


Tu a été tres clair et je te remercie


MAIS : je parlais d'une TimeStamp MySql pas d'un Timespan

Cependant l'information que tu a donné est tres utile


 


 
0
billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
25 avril 2008 à 09:12
Ok, hors sujet alors ^^ Autant pour moi.
Je ne connais pas MySQL et donc je croyais à une faute de frappe de ta part.
Mais c'est moi qui ai fauté ^^

Tant pis,

Bonne journée à toi,


Billou_13
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 99
26 avril 2008 à 23:02
Salut,

Le comportement auquel tu t'attendais est vrai pour le type timestamp (avec son synonyme rowversion si je ne m'abuse) sous SQL Server.

/*
coq
MVP Visual C#
CoqBlog
*/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
olibara Messages postés 666 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 11 mars 2010 5
26 avril 2008 à 23:16
Merci coq


C'est vrai pour autant que je ne sais plus quelle option style "SET ON UPDATE CURRENT"  ou un truc du genre a été setté,


Je l'avais oublié


 


 


 
0