Bonjour j'ai une procédure stocké qui execute cette requete :

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
 
INSERT INTO Location
(LocationID, SiteID, LocationName, LocationCode, Path, PathName, WhenUpdated, RecordStatus, ApplicationCode, Updated)
SELECT DISTINCT 'SHS'+ right('0000000000000' + ltrim(rtrim(SHS.StockLocationCode)),13), 
	@DefaultSite,
	SHS.StockLocationName,
 	SHS.StockLocationCode, 
	'/' + rtrim('SHS'+ right('0000000000000' + ltrim(rtrim(SHS.StockLocationCode)),13)) + '/',
	'/' + rtrim(SHS.StockLocationCode) + '/',
	Getdate(),0, 0, 0
FROM Optim_Jobs.dbo.Catalog as SHS LEFT OUTER JOIN Location
	ON 'SHS'+ right('0000000000000' + ltrim(rtrim(SHS.[StockLocationCode])),13) collate database_default = Location.LocationID collate database_default
WHERE Location.LocationID is null 
	AND SHS.StockLocationCode is not null
	AND len(ltrim(rtrim(SHS.SupplierCode)))>0
Je passe le script de creation de cette procédure sur SQL 2000 et SQL 2005 sur les serveurs que j'ai a dispo au boulot. Tout Marche sans problémes

Lorsque je passe cette procédure sur le serveur SQL 2005 chez le client j'ai ce message :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
Msg 468, Niveau 16, État 9, Procédure sp2SHSInsertCatalog, Ligne 38
Impossible de résoudre le conflit de classement entre "SQL_Latin1_General_CP1_CI_AS" et "French_CI_AS" dans l'opération equal to.
Je ne comprend pas....
Pour info les bas sont sous la meme instances nommmé...

Merci de votre coup de main....