Lors d'une migration SQLserver7 vers 2000, certaines procédures stockées
faisant des jointures entre des tables temporaires (#, ## ou variables table)
et permanentes font désormais apparaitre le message suivant pour des colonnes
au format char ou varchar :
Msg 446, "Impossible de résoudre le classement en conflit de l'opération
equal to"
alors que les colonnes ont le même format et que leurs listes de valeurs
sont identiques.
Une idée de résolution ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Nicolas BERGER
Le Classement ( COLLATION) semble ne pas être le même. A noter regarder dans EM les propriété de tempdb, et comparer avec le résultat du sp_help des tables avec lesquelles sont faites les jointures dans l'autre base. Il semblerait a priori que la migration ait été faite par Backup / Restore, qui concerve le classement. Il me semble que la solution de votre problème peut être dans la modification du classement par défaut de la base model, puis l'arrêt / redémarrage du serveur (la tempdb est recréée en s'ppuyant sur model à chaque redémarrage du serveur). JN. "Toffaloni_JC" a écrit dans le message de news:
Lors d'une migration SQLserver7 vers 2000, certaines procédures stockées faisant des jointures entre des tables temporaires (#, ## ou variables table) et permanentes font désormais apparaitre le message suivant pour des colonnes au format char ou varchar : Msg 446, "Impossible de résoudre le classement en conflit de l'opération equal to" alors que les colonnes ont le même format et que leurs listes de valeurs sont identiques. Une idée de résolution ?
Le Classement ( COLLATION) semble ne pas être le même.
A noter regarder dans EM les propriété de tempdb, et comparer avec le
résultat du sp_help des tables avec lesquelles sont faites les jointures
dans l'autre base.
Il semblerait a priori que la migration ait été faite par Backup / Restore,
qui concerve le classement.
Il me semble que la solution de votre problème peut être dans la
modification du classement par défaut de la base model, puis l'arrêt /
redémarrage du serveur (la tempdb est recréée en s'ppuyant sur model à
chaque redémarrage du serveur).
JN.
"Toffaloni_JC" <ToffaloniJC@discussions.microsoft.com> a écrit dans le
message de news: AA450C7F-67A3-4786-8A3C-5EF6164C06C9@microsoft.com...
Lors d'une migration SQLserver7 vers 2000, certaines procédures stockées
faisant des jointures entre des tables temporaires (#, ## ou variables
table)
et permanentes font désormais apparaitre le message suivant pour des
colonnes
au format char ou varchar :
Msg 446, "Impossible de résoudre le classement en conflit de l'opération
equal to"
alors que les colonnes ont le même format et que leurs listes de valeurs
sont identiques.
Une idée de résolution ?
Le Classement ( COLLATION) semble ne pas être le même. A noter regarder dans EM les propriété de tempdb, et comparer avec le résultat du sp_help des tables avec lesquelles sont faites les jointures dans l'autre base. Il semblerait a priori que la migration ait été faite par Backup / Restore, qui concerve le classement. Il me semble que la solution de votre problème peut être dans la modification du classement par défaut de la base model, puis l'arrêt / redémarrage du serveur (la tempdb est recréée en s'ppuyant sur model à chaque redémarrage du serveur). JN. "Toffaloni_JC" a écrit dans le message de news:
Lors d'une migration SQLserver7 vers 2000, certaines procédures stockées faisant des jointures entre des tables temporaires (#, ## ou variables table) et permanentes font désormais apparaitre le message suivant pour des colonnes au format char ou varchar : Msg 446, "Impossible de résoudre le classement en conflit de l'opération equal to" alors que les colonnes ont le même format et que leurs listes de valeurs sont identiques. Une idée de résolution ?
Fred BROUARD
Pour compléter le précédente réponse : 1) http://sqlpro.developpez.com/cours/sqlserver/collations/ 2) http://sqlpro.developpez.com/cours/sqlaz/ddl/?page=partie1#L4
A +
Toffaloni_JC a écrit:
Lors d'une migration SQLserver7 vers 2000, certaines procédures stockées faisant des jointures entre des tables temporaires (#, ## ou variables table) et permanentes font désormais apparaitre le message suivant pour des colonnes au format char ou varchar : Msg 446, "Impossible de résoudre le classement en conflit de l'opération equal to" alors que les colonnes ont le même format et que leurs listes de valeurs sont identiques. Une idée de résolution ?
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste 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 ************************ www.datasapiens.com *************************
Pour compléter le précédente réponse :
1) http://sqlpro.developpez.com/cours/sqlserver/collations/
2) http://sqlpro.developpez.com/cours/sqlaz/ddl/?page=partie1#L4
A +
Toffaloni_JC a écrit:
Lors d'une migration SQLserver7 vers 2000, certaines procédures stockées
faisant des jointures entre des tables temporaires (#, ## ou variables table)
et permanentes font désormais apparaitre le message suivant pour des colonnes
au format char ou varchar :
Msg 446, "Impossible de résoudre le classement en conflit de l'opération
equal to"
alors que les colonnes ont le même format et que leurs listes de valeurs
sont identiques.
Une idée de résolution ?
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste 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
************************ www.datasapiens.com *************************
Pour compléter le précédente réponse : 1) http://sqlpro.developpez.com/cours/sqlserver/collations/ 2) http://sqlpro.developpez.com/cours/sqlaz/ddl/?page=partie1#L4
A +
Toffaloni_JC a écrit:
Lors d'une migration SQLserver7 vers 2000, certaines procédures stockées faisant des jointures entre des tables temporaires (#, ## ou variables table) et permanentes font désormais apparaitre le message suivant pour des colonnes au format char ou varchar : Msg 446, "Impossible de résoudre le classement en conflit de l'opération equal to" alors que les colonnes ont le même format et que leurs listes de valeurs sont identiques. Une idée de résolution ?
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste 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 ************************ www.datasapiens.com *************************