OVH Cloud OVH Cloud

Erreur 446

4 réponses
Avatar
fdouieb
Voici une PS:
create procedure Test
as
begin
create table #Tmp1 (Code varchar(24) not null)

insert into #Tmp1 select Code from Compte

select * from #Tmp1 T, Compte C where T.Code = C.Code
end;

exec Test;

Bien que stupide cette prosedure stocke est théoriquement juste. Cependant
j'ai l'erreur suivante:
Serveur : Msg 446, Niveau 16, État 9, Procédure Test, Ligne 10
Impossible de résoudre le classement en conflit de l'opération equal to.

La PS n'arrive pas a faire l'egalité??? Deplus, le niveau est 16 et par
consequent je devrais etre en messure de modifier la PS pour supprimer
l'erreur mais je ne vois pas d'erreur.

Merci de votre reponse

PS: ma config WinXP SP2 avec SQL Serveur 2000

4 réponses

Avatar
bruno reiter [MVP]
pb de collate différent entre tempdb et ta base sans doute

voir thread récent pour mettre le collate dans le where

br

"fdouieb" wrote in message
news:
Voici une PS:
create procedure Test
as
begin
create table #Tmp1 (Code varchar(24) not null)

insert into #Tmp1 select Code from Compte

select * from #Tmp1 T, Compte C where T.Code = C.Code
end;

exec Test;

Bien que stupide cette prosedure stocke est théoriquement juste. Cependant
j'ai l'erreur suivante:
Serveur : Msg 446, Niveau 16, État 9, Procédure Test, Ligne 10
Impossible de résoudre le classement en conflit de l'opération equal to.

La PS n'arrive pas a faire l'egalité??? Deplus, le niveau est 16 et par
consequent je devrais etre en messure de modifier la PS pour supprimer
l'erreur mais je ne vois pas d'erreur.

Merci de votre reponse

PS: ma config WinXP SP2 avec SQL Serveur 2000



Avatar
fdouieb
Merci de prendre du temps pour me mrepondre. Cependant je ne comprend pas la
reponse. je ne sais pas quoi faire pour corriger l'erreur. Est-ce
que tu peux etre plus claire
Merci d'avance

"bruno reiter [MVP]" a écrit :

pb de collate différent entre tempdb et ta base sans doute

voir thread récent pour mettre le collate dans le where

br

"fdouieb" wrote in message
news:
> Voici une PS:
> create procedure Test
> as
> begin
> create table #Tmp1 (Code varchar(24) not null)
>
> insert into #Tmp1 select Code from Compte
>
> select * from #Tmp1 T, Compte C where T.Code = C.Code
> end;
>
> exec Test;
>
> Bien que stupide cette prosedure stocke est théoriquement juste. Cependant
> j'ai l'erreur suivante:
> Serveur : Msg 446, Niveau 16, État 9, Procédure Test, Ligne 10
> Impossible de résoudre le classement en conflit de l'opération equal to.
>
> La PS n'arrive pas a faire l'egalité??? Deplus, le niveau est 16 et par
> consequent je devrais etre en messure de modifier la PS pour supprimer
> l'erreur mais je ne vois pas d'erreur.
>
> Merci de votre reponse
>
> PS: ma config WinXP SP2 avec SQL Serveur 2000
>





Avatar
bruno reiter [MVP]
déjà répondu, voir le thread "COLLATE" du 18/02

br

"fdouieb" wrote in message
news:
Merci de prendre du temps pour me mrepondre. Cependant je ne comprend pas


la
reponse. je ne sais pas quoi faire pour corriger l'erreur. Est-ce
que tu peux etre plus claire
Merci d'avance

"bruno reiter [MVP]" a écrit :

> pb de collate différent entre tempdb et ta base sans doute
>
> voir thread récent pour mettre le collate dans le where
>
> br
>
> "fdouieb" wrote in message
> news:
> > Voici une PS:
> > create procedure Test
> > as
> > begin
> > create table #Tmp1 (Code varchar(24) not null)
> >
> > insert into #Tmp1 select Code from Compte
> >
> > select * from #Tmp1 T, Compte C where T.Code = C.Code
> > end;
> >
> > exec Test;
> >
> > Bien que stupide cette prosedure stocke est théoriquement juste.


Cependant
> > j'ai l'erreur suivante:
> > Serveur : Msg 446, Niveau 16, État 9, Procédure Test, Ligne 10
> > Impossible de résoudre le classement en conflit de l'opération equal


to.
> >
> > La PS n'arrive pas a faire l'egalité??? Deplus, le niveau est 16 et


par
> > consequent je devrais etre en messure de modifier la PS pour supprimer
> > l'erreur mais je ne vois pas d'erreur.
> >
> > Merci de votre reponse
> >
> > PS: ma config WinXP SP2 avec SQL Serveur 2000
> >
>
>
>


Avatar
AXL
Le probleme , c que ta base de données n'a surement pas le meme code page
que ton serveur !

tu peux aussi faire plus simple pour ta requete

select Code from Compte into #Tmp1

AXL


"=?Utf-8?B?ZmRvdWllYg==?=" écrivait
news::

Merci de prendre du temps pour me mrepondre. Cependant je ne comprend
pas la reponse. je ne sais pas quoi faire pour corriger l'erreur.
Est-ce que tu peux etre plus claire
Merci d'avance

"bruno reiter [MVP]" a écrit :

pb de collate différent entre tempdb et ta base sans doute

voir thread récent pour mettre le collate dans le where

br

"fdouieb" wrote in message
news:
> Voici une PS:
> create procedure Test
> as
> begin
> create table #Tmp1 (Code varchar(24) not null)
>
> insert into #Tmp1 select Code from Compte
>
> select * from #Tmp1 T, Compte C where T.Code = C.Code
> end;
>
> exec Test;
>
> Bien que stupide cette prosedure stocke est théoriquement juste.
> Cependant j'ai l'erreur suivante:
> Serveur : Msg 446, Niveau 16, État 9, Procédure Test, Ligne 10
> Impossible de résoudre le classement en conflit de l'opération
> equal to.
>
> La PS n'arrive pas a faire l'egalité??? Deplus, le niveau est 16
> et par consequent je devrais etre en messure de modifier la PS pour
> supprimer l'erreur mais je ne vois pas d'erreur.
>
> Merci de votre reponse
>
> PS: ma config WinXP SP2 avec SQL Serveur 2000
>