Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/04/2011, 08h50   #1
Invité de passage
 
Inscription : août 2004
Messages : 23
Détails du profil
Informations forums :
Inscription : août 2004
Messages : 23
Points : 4
Points : 4
Par défaut [SqlServer2008] Manipulation de date dans une procédure stockée

Bonjour,
Je cherche a faire une procédure stockée qui supprimera les enregistrements plus vieux de 24h pour cela j'ai fait la procédure suivante :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
 
	DECLARE @LIMITDATE datetime;
	DECLARE @STRLIMITDATE varchar(500);	
	DECLARE @instrucion varchar(400);
 
	SET DATEFORMAT dmy
	SET @LIMITDATE = DATEADD(hh,-24,SYSDATETIMEOFFSET());
	SET @STRLIMITDATE = CONVERT(varchar(500), @LIMITDATE, 20);
 
	SET @instrucion ='DELETE FROM InfoC WHERE (DateEntree < ' + @STRLIMITDATE + ')';
	EXEC(@instrucion);
la procédure exécute l'instruction "DELETE FROM Drying_InfosChariot WHERE (DateEntree < 2011-04-14 08:48:53)" mais ça me sort une erreur "Incorrect syntax near '08'."

Je ne comprend plus!
Auriez vous une piste pour m'aider?

Cordialement,
Fred
passicon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/04/2011, 08h54   #2
Membre Expert
 
Avatar de iberserk
 
Homme Bruno IGNACE
Architecte de base de données
Inscription : novembre 2004
Messages : 1 299
Détails du profil
Informations personnelles :
Nom : Homme Bruno IGNACE
Âge : 30
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Architecte de base de données
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2004
Messages : 1 299
Points : 2 282
Points : 2 282
Envoyer un message via MSN à iberserk
Citation:
la procédure exécute l'instruction "DELETE FROM Drying_InfosChariot WHERE (DateEntree < 2011-04-14 08:48:53)" mais ça me sort une erreur "Incorrect syntax near '08'."

Je ne comprend plus!
Auriez vous une piste pour m'aider?

Ta date doit être entre guillements...

Sinon tu t’embêtes pour rien fais juste :
Code :
WHERE DateEntree<GETDATE()-1
ou
Code :
WHERE DateEntree<DATEADD(day,GETDATE(),1)
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
iberserk est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/04/2011, 09h10   #3
Invité de passage
 
Inscription : août 2004
Messages : 23
Détails du profil
Informations forums :
Inscription : août 2004
Messages : 23
Points : 4
Points : 4
Ha oui en effet c'est plus simple!
Je croit que je me suis un peut torturer l'esprit....
passicon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h05.


 
 
 
 
Partenaires

Hébergement Web