J'utilise une tache plannifiée windows qui me permet de lancer un script sql.

voici la ligne de commande principale du batch :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
isql -U %USER% -P %PASS% -S %SERVER% -d %DBASE% -i TEST.sql -n
Mon code sql est dans le fichier TEST.sql (vu depuis TOAD):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 
-- DF4 - DROP FONCTION dbo.decodemonth
IF exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[decodemonth]') and xtype in (N'FN', N'IF', N'TF'))
drop function [dbo].[decodemonth]
GO
 
-- CF4 - CREATE FONCTION dbo.decodemonth
CREATE FUNCTION dbo.decodemonth
(
@date as datetime
)
returns varchar(15)
as
begin
Declare @NB integer
Declare @NOM varchar(15)
set @NB = month(@date)
 
If @NB = 1  
		SET @NOM = 'Janvier'
If @NB = 2  
		SET @NOM = 'Février'
If @NB = 3  
		SET @NOM = 'Mars'
If @NB = 4  
		SET @NOM = 'Avril'
If @NB = 5  
		SET @NOM = 'Mai'
If @NB = 6  
		SET @NOM = 'Juin'
If @NB = 7  
		SET @NOM = 'Juillet'
If @NB = 8  
		SET @NOM = 'Août'
If @NB = 9  
		SET @NOM = 'Septembre'
If @NB = 10  
		SET @NOM = 'Octobre'
If @NB = 11  
		SET @NOM = 'Novembre'
If @NB = 12  
		SET @NOM = 'Décembre'
 
return @NOM
END
GO
le probleme c'est que la fonction est interpretée par le serveur comme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
 
CREATE FUNCTION dbo.decodemonth
(
@date as datetime
)
returns varchar(15)
as
begin
Declare @NB integer
Declare @NOM varchar(15)
set @NB = month(@date)
 
If @NB = 1  
		SET @NOM = 'Janvier'
If @NB = 2  
		SET @NOM = 'FÚvrier'
If @NB = 3  
		SET @NOM = 'Mars'
If @NB = 4  
		SET @NOM = 'Avril'
If @NB = 5  
		SET @NOM = 'Mai'
If @NB = 6  
		SET @NOM = 'Juin'
If @NB = 7  
		SET @NOM = 'Juillet'
If @NB = 8  
		SET @NOM = 'Ao¹t'
If @NB = 9  
		SET @NOM = 'Septembre'
If @NB = 10  
		SET @NOM = 'Octobre'
If @NB = 11  
		SET @NOM = 'Novembre'
If @NB = 12  
		SET @NOM = 'DÚcembre'
 
return @NOM
END
en faite les accens ont mal été interprété

quelqu'un a t'il une idée !

Merci !