Probleme de DATE sous SQL server

youyou08
Messages postés
8
Date d'inscription
jeudi 28 avril 2005
Statut
Membre
Dernière intervention
16 octobre 2007
- 28 avril 2005 à 13:55
dba_votre_service
Messages postés
4
Date d'inscription
dimanche 15 janvier 2006
Statut
Membre
Dernière intervention
6 mai 2008
- 15 janv. 2006 à 18:07
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 @date=2005-04-01

PRINT @date



En resultat j'obtient comme date le 24 Juin 1905



Je ne sais pas pourquoi,il ne m'affiche pas le 01 avril 2005



Quelqu'un pourrait m'aider s'il vous plait,pour creer ma vaiable date correctement (je debute sous

SLQ Server)

3 réponses

abirti
Messages postés
31
Date d'inscription
mardi 26 avril 2005
Statut
Membre
Dernière intervention
28 mai 2008

1 mai 2005 à 11:39
Pour obtenir la date système, il faut déclarer ta variable comme SYSDATE.
0
sgrant
Messages postés
89
Date d'inscription
mercredi 26 mai 2004
Statut
Membre
Dernière intervention
13 mai 2005

11 mai 2005 à 10:41
Bonjour tu peut utiliser le DATEFORMAT qui définit l'ordre des elements de date dans la connexion en cours

DECLARE @date DATETIME
set DATEFORMAT ymd
SET @date='2005-04-01'
PRINT @date

logiquement tu dois avoir comme format par défaut dmy
donc tu peux faire aussi :
DECLARE @date DATETIME
SET @date='01-04-2005'
PRINT @date

N'oublie pas les cotes

J'espere t'avoir aider


sg
0
dba_votre_service
Messages postés
4
Date d'inscription
dimanche 15 janvier 2006
Statut
Membre
Dernière intervention
6 mai 2008
1
15 janv. 2006 à 18:07
Salut,

Si tu souhaites déclarer une variable de type date,
l'affecter à partir de variables numériques numero de mois et jour,
tu peux utiliser ceci:

declare @MONTH int
declare @YEAR int
declare @DATE datetime

set @MONTH=12
set @YEAR=2005

set @DATE = convert(datetime,'1/' + cast(@MONTH as varchar(2)) + '/' + cast(@YEAR as varchar(4)),103)

select @DATE

=> 2005-12-01 00:00:00.000
0