begin process at 2012 05 27 02:22:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

SQL Server, MSDE, SQL Express

 > 

Requêtes

 > 

sql server 2000 + probleme de datetime !


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

sql server 2000 + probleme de datetime !

jeudi 26 octobre 2006 à 11:30:53 | sql server 2000 + probleme de datetime !

jimmy69

Bonjour,

Dans une db sous sql server 2000 on a une table qui utilise une colonne de type datetime.

J'aimerais savoir
quelle est la query SQL à utiliser pour obtenir la ligne qui correspond à une date bien précise (date + timestamp)?

J'ai éssayé la condition suivante:

WHERE     (c1.timestamp BETWEEN @ADATE AND DATEADD(s, 1, @ADATE))

avc des résultats assez surprenants, car alléatoires. Des fois le Between correspondait à "a <= x < b", d'autres fois ça revenait à "a < x <= b".


Je vous remercie pour vos idées
Christophe
jeudi 26 octobre 2006 à 17:51:33 | Re : sql server 2000 + probleme de datetime !

Malkuth

Membre Club
Réponse acceptée !
!!!ATENTION!!! le type TimeStamp n'est absoluement pas un conteneur de Date ou d'heure :

Le timestamp est un Bigint dont la valeur est entièrement gérer par le serveur, en fait a chaque fois que SQLServeur modifie une donnée dans une table il incrémente un compteur interne de type bigint, si l'enregistrement modifier contient un champ de type timestamp, il recopie dedant la valeur de se compteur, le timestamp permet donc savoir si un enregistrement a été modifier depuis qu'on la lu pour la dernière fois :

il est de se fait assez pratique pour gérer des cache sur des Logiciel client:

Client                                                          Serveur
Récupère les donnée du serveur
Recherche le timeStamp le plus Elever
                                                                    Divers modifs
Recupère les donée avec un timestamp
[Plus 'haut' que celui déterminer précédement

Avec cette méthode seul les enregistrement modifier depuis la derniére récupération sont récupérer plutôt que la table entière donc moins de donée transit entre le serveur et le client ce qui peux être important sur dans grosse table ou avec un réseaux a faible débit.

En fait pour enregistrer une heure ou une date ou les deux en même temps le type DateTime doit être utiliser

Donc Avec une table qui contient un champ DateTime 'ChpDate' tu fais :

DECLARE @ADATE datetime
SET @ADATE =CONVERT(DATETIME, '2006-12-21 14:34:23', 102)
SELECT * FROM MaTable
WHERE     (MaTable.ChpDate BETWEEN @ADATE AND DATEADD(s, 1, @ADATE))

Tu remarquera l'utilisation de CONVERT (...) qui converti le Texte en datetime pour plus d'infos sur les conversion de date dirige toi vers la msdn.

Voilà si j'ai pas été clair dis moi se que tu n'as pas compris(ou ce que je n'est pas compris)
vendredi 27 octobre 2006 à 19:31:11 | Re : sql server 2000 + probleme de datetime !

jimmy69

salut salut : Malkuth

je te remercie vraiment pour toutes ces infos !

c'est vraiment plus claire pour moi !

merci et bon week end
Christophe


Cette discussion est classée dans : date, sql, server, probleme, datetime


Répondre à ce message

Sujets en rapport avec ce message

DATETIME SQL SERVER AU SECOURS !!!!!! [ par MACHOMAN ] bonjour, j'ai plusieurs pb avec les datetime sous sql server : 1 - j'ai deux champs datetime, dans le premier il y a une date dans le second une heure Probleme de DATE sous SQL server [ par youyou08 ] J'ai un probleme avec la création d'une variable Date sous SQL server J'ai taper le code suivant pour créer ma variable DECLARE @date DATETIME SET @d sql server datetime [ par brmdevinci ] svp j'execute cette requete " select * from personne where date_nais='12/02/1986'" la resultat est un tableau vide sachant que quand j'ai remplit la SQL Server: Suppression fichiers par rapport à une date [ par stan08 ] Bonjour,J'aimerais connaitre le moyen (s'il existe) de supprimer dans un répertoire tous les fichiers dont la date de modification (ou création) est s [SQL Server] Modifier/forcer l'heure d'un DATETIME [ par Sieurcoug ] Bonjour,Dans une fonction, j'ai besoin de forcer l'heure d'un DATETIME.Par exemple si l'heure de création est inférieure à 8h00, il faut retenir 8h00 Probleme dans un requete aide moi svp!! [ par cybercop ] bjr a tt, bon je suis en sql server 2005 express , j'ai 1 prb dans un requette la condition n'est affiche pas aucun resultat .il ma donne un erreur  < Probleme dans un requete aide moi svp!! [ par cybercop ] bjr a tt, bon je suis en sql server 2005 express , j'ai 1 prb dans un requette la condition n'est affiche pas aucun resultat .il ma donne un erreur  sql server [ par mahamourta ] salut svp lorsque je fais une insertion dans une base de donnee sous sql server ,le format de la date est annee-mois-jour,alors que je veux un form Insertion de la date seulement (SQL Server 2005) [ par OmarEK ] Salut,Est ce qu'il y a un moyen pour inserer que la date dans une table d'une base de données SQL au lieu de mettre la date et l'heure, tout en suppos [SQL] date - n heures [ par remifalcon ] Bonjour, après avoir chercher différents tuto, je viens vers vous pour ce problème:Je cherche à faire une requète SQL me renvoyant toutes les lignes (


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,030 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales