Bonjour,

J'ai défini un plan de maintenance qui inclut une tâche de nettoyage "Clean Up History".
Le problème que je rencontre concerne la manière dont la date des fichiers à purger éventuellement (date > 3 semaines) est calculée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
Clean Up History (ZerX11)
Cleanup history on Target server connection
History type: Backup,Job,Maintenance Plan
Age: Older than 3 Weeks
Task start: 02/11/2010 09:44.
Task end: 02/11/2010 09:44.
Success
Command:declare @dt datetime select @dt = cast(N''10/12/2010 09:44:02'' as datetime) exec msdb.dbo.sp_delete_backuphistory @dt
GO
EXEC msdb.dbo.sp_purge_jobhistory  @oldest_date=''10/12/2010 09:44:02''
GO
EXECUTE msdb..sp_maintplan_delete_log null,null,''10/12/2010 09:44:02''
la date castée, "cast(N''10/12/2010 09:44:02'', est au format anglo-saxon, et donc le calcul de la date des fichiers obsolète est fausse : on devrait avoir "12/10/2010 09:44:02", c'est à dire, 3 semaines avant le 02/11/2010 09:44 du "Task start".
Je pensais que cela était lié au paramétrage linguistique du user avec lequel est exécuté le traitement ; j'ai donc essayé avec un user paramétré au format french puis US, mais aucune différence. La version de SQL Server que j'utilise est en langue anglaise.
Une idée pour résoudre cette anomalie ?