hello,
J'ai une question très simple:
J'ai une procédure stocké qui a un paramètre en entrée (date), ce paramètre ne doit pas être incohérent (il ne doit pas dépassé la date du jour)
donc je voudrais savoir si y a moyen avec SQL Server 2005 de quitter une exécution en cour, j'ai essayé RAISERROR mais le problème c'est que ça ne marche pas!!
Il me retourne le résultat du select et moi je veux qu'il arrêt l'exécution comme ci y a une erreur de syntaxe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 declare @U_STR_LOAD_DATE varchar(10);--date dans la base de données declare @STR_LOAD_DATE varchar(10);--date sortie declare @STR_DAY varchar(10);-- date passé par l'aapli set @STR_DAY = '03/25/2012' set @U_STR_LOAD_DATE ='04/15/2011' if @U_STR_LOAD_DATE = @STR_DAY set @STR_LOAD_DATE = @U_STR_LOAD_DATE if CONVERT(DATEtime,@STR_DAY ,101)>CONVERT(DATEtime,@U_STR_LOAD_DATE ,101) RAISERROR('Oh no a fatal error', 25, -1) else SET @STR_LOAD_DATE = @STR_DAY select @STR_LOAD_DATE as STR_LOAD_DATE, @U_STR_LOAD_DATE as U_STR_LOAD_DATE, @STR_DAY as STR_DAY
Code : Sélectionner tout - Visualiser dans une fenêtre à part NULL 04/15/2011 03/25/2012
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Msg 2754, Level 16, State 1, Line 12 Error severity levels greater than 18 can only be specified by members of the sysadmin role, using the WITH LOG option. (1 row(s) affected)
Partager