Probleme interpretation Fonction
:salut:
J'utilise une tache plannifiée windows qui me permet de lancer un script sql.
voici la ligne de commande principale du batch :
Code:
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:
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:
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 !