Jointure avec une table temporaire

Le
Alain
Bonjour,
j'avais une procdure stocke sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait trs bien.
Je suis pass SQL Server 2000 et maintenant sur cette
mme proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment rsoudre ce problme

Merci d'avance

Alain
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fred BROUARD
Le #11719071
A lire :
http://sqlpro.developpez.com/MSSQLServer_collations/Collations.html#4

A +

Alain a écrit:
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain



--
Frédéric BROUARD, MVP Microsoft SQL Server. Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto: ******************
bruno reiter [MVP]
Le #11719061
ta base à surement un "collate" diférent de celui du serveur (donc tempdb)

br

"Alain" news:5bd701c42db4$8dcb4a50$
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain
Alain
Le #11719021
Ok, par contre dans proc stock il ne m'accepte pas lors
de la création de ma table temporaire l'instruction
collate. C'est normal ?

-----Message d'origine-----
ta base à surement un "collate" diférent de celui du


serveur (donc tempdb)

br

"Alain"

message
news:5bd701c42db4$8dcb4a50$
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain


.



bruno reiter [MVP]
Le #11718881
ceci fonctionne chez moi :



create proc dbo.usp_brbr
as
create table #brbr
(
a nchar(55) collate SQL_Latin1_General_Cp1_CI_AS
)
insert #brbr
(a)
values(N'xxx')
select a from #brbr
drop table #brbr
go

EXEC dbo.usp_brbr

drop proc dbo.usp_brbr





--
******************
br


"Alain" news:5cf801c42dda$08c6c020$
Ok, par contre dans proc stock il ne m'accepte pas lors
de la création de ma table temporaire l'instruction
collate. C'est normal ?

-----Message d'origine-----
ta base à surement un "collate" diférent de celui du


serveur (donc tempdb)

br

"Alain"

message
news:5bd701c42db4$8dcb4a50$
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain


.



Alain
Le #11718731
Avec une base créée sous 2000 ça marche par contre avec
une base restaurée de SQL 7 il ne me prend pas
l'instruction collate ....

-----Message d'origine-----
ceci fonctionne chez moi :



create proc dbo.usp_brbr
as
create table #brbr
(
a nchar(55) collate SQL_Latin1_General_Cp1_CI_AS
)
insert #brbr
(a)
values(N'xxx')
select a from #brbr
drop table #brbr
go

EXEC dbo.usp_brbr

drop proc dbo.usp_brbr





--
******************
br


"Alain"

message
news:5cf801c42dda$08c6c020$
Ok, par contre dans proc stock il ne m'accepte pas lors
de la création de ma table temporaire l'instruction
collate. C'est normal ?

-----Message d'origine-----
ta base à surement un "collate" diférent de celui du


serveur (donc tempdb)

br

"Alain"

message
news:5bd701c42db4$8dcb4a50$
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain


.





.



bruno reiter [MVP]
Le #11718691
ça existe effectivement depuis SQL2000

br

"Alain" news:668001c42e8b$768a3f40$
Avec une base créée sous 2000 ça marche par contre avec
une base restaurée de SQL 7 il ne me prend pas
l'instruction collate ....

-----Message d'origine-----
ceci fonctionne chez moi :



create proc dbo.usp_brbr
as
create table #brbr
(
a nchar(55) collate SQL_Latin1_General_Cp1_CI_AS
)
insert #brbr
(a)
values(N'xxx')
select a from #brbr
drop table #brbr
go

EXEC dbo.usp_brbr

drop proc dbo.usp_brbr





--
******************
br


"Alain"

message
news:5cf801c42dda$08c6c020$
Ok, par contre dans proc stock il ne m'accepte pas lors
de la création de ma table temporaire l'instruction
collate. C'est normal ?

-----Message d'origine-----
ta base à surement un "collate" diférent de celui du


serveur (donc tempdb)

br

"Alain"

message
news:5bd701c42db4$8dcb4a50$
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain


.





.



bruno reiter [MVP]
Le #11718681
excuses-moi, j'ai répondu trop vite,
il faut changer le niveau de compatibilité avec
sp_dbcmptlevel et le passer à 80

br

"Alain" news:668001c42e8b$768a3f40$
Avec une base créée sous 2000 ça marche par contre avec
une base restaurée de SQL 7 il ne me prend pas
l'instruction collate ....

-----Message d'origine-----
ceci fonctionne chez moi :



create proc dbo.usp_brbr
as
create table #brbr
(
a nchar(55) collate SQL_Latin1_General_Cp1_CI_AS
)
insert #brbr
(a)
values(N'xxx')
select a from #brbr
drop table #brbr
go

EXEC dbo.usp_brbr

drop proc dbo.usp_brbr





--
******************
br


"Alain"

message
news:5cf801c42dda$08c6c020$
Ok, par contre dans proc stock il ne m'accepte pas lors
de la création de ma table temporaire l'instruction
collate. C'est normal ?

-----Message d'origine-----
ta base à surement un "collate" diférent de celui du


serveur (donc tempdb)

br

"Alain"

message
news:5bd701c42db4$8dcb4a50$
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain


.





.



Alain
Le #11341751
Merci, ça m'arrange vraiment !

-----Message d'origine-----
ceci fonctionne chez moi :



create proc dbo.usp_brbr
as
create table #brbr
(
a nchar(55) collate SQL_Latin1_General_Cp1_CI_AS
)
insert #brbr
(a)
values(N'xxx')
select a from #brbr
drop table #brbr
go

EXEC dbo.usp_brbr

drop proc dbo.usp_brbr





--
******************
br


"Alain"

message
news:5cf801c42dda$08c6c020$
Ok, par contre dans proc stock il ne m'accepte pas lors
de la création de ma table temporaire l'instruction
collate. C'est normal ?

-----Message d'origine-----
ta base à surement un "collate" diférent de celui du


serveur (donc tempdb)

br

"Alain"

message
news:5bd701c42db4$8dcb4a50$
Bonjour,
j'avais une procédure stockée sous SQL Server 7 qui
faisait une jointure entre une table temporaire et une
table physique existante. Tout cela marchait très bien.
Je suis passé à SQL Server 2000 et maintenant sur cette
même proc stock j'ai une erreur :
"Msg 446, Cannot resolve collation conflict for equal to
operation".

Comment résoudre ce problème

Merci d'avance

Alain


.





.



Publicité
Poster une réponse
Anonyme