Ir para conteúdo


Foto

CONSULTA EM BANCOS DIFERENTES


5 respostas neste tópico

#1 Vinicius Schuh

Vinicius Schuh
  • Membros
  • 84 posts
  • Gender:Male
  • Location:Bernardo de Irigoyen - Argentina

Postado 19 dezembro 2011 - 15:15

Salve galera!!

Estou tentando executar um script de consulta, ambos os bancos(diferentes) estão no mesmo servidor, mas me retorna o seguinte erro:

Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation.


o Script é o seguinte:
CODE
SELECT          
    BANCO_1.dbo.Produtos.CódigoDeBarra, BANCO_2.dbo.tblEstoque.NO_Estoque
FROM
    Produtos
INNER JOIN
    BANCO_2.dbo.tblEstoque ON BANCO_1.Produtos.CódigoDeBarra = BANCO_2.dbo.tblEstoque.ID_Produto
GROUP BY
    BANCO_2.dbo.Produtos.CódigoDeBarra


O que será que estou fazendo de errado? Desde já agradeço e uma boa semana a todos.

Editado por Vinicius Schuh, 19 dezembro 2011 - 15:16 .

"A vida é uma sinuca, e eu confio no meu taco."

#2 isaikki

isaikki
  • Membros
  • 61 posts
  • Gender:Male
  • Location:Rio de Janeiro

Postado 20 dezembro 2011 - 12:08

Olha, parece que está ocorrendo erro de tipo de dados... por exemplo, tentando comparar inteiro com string ou outra coisa do gênero... se for só tipos diferentes, faz a igualdade usando um CONVERT para igualar os tipos
qualquer coisa fala aí

Editado por isaikki, 20 dezembro 2011 - 12:11 .


#3 Vinicius Schuh

Vinicius Schuh
  • Membros
  • 84 posts
  • Gender:Male
  • Location:Bernardo de Irigoyen - Argentina

Postado 20 dezembro 2011 - 12:46

Boa tarde isaikki, os dois campos são do tipo varchar (13)

Editado por Vinicius Schuh, 20 dezembro 2011 - 14:43 .

"A vida é uma sinuca, e eu confio no meu taco."

#4 isaikki

isaikki
  • Membros
  • 61 posts
  • Gender:Male
  • Location:Rio de Janeiro

Postado 20 dezembro 2011 - 14:46

Eu fiz um teste aqui no meu banco, e foi legal, só que os campos que eu comparei, ambos eram integer:

CODE
select
    a.atividadeCodigo,
    a.atividadeNome,
    p.projetoCodigo
from
    Banco1.dbo.Atividades a
    join Banco2.dbo.Projetos p on p.projetoCodigo = a.projetoCodigo


desse jeito funcionou perfeitamente

Editado por isaikki, 20 dezembro 2011 - 14:47 .


#5 Vinicius Schuh

Vinicius Schuh
  • Membros
  • 84 posts
  • Gender:Male
  • Location:Bernardo de Irigoyen - Argentina

Postado 20 dezembro 2011 - 15:13

Pois é parçeiro, refiz o código aqui e me trás o mesmo erro =/
"A vida é uma sinuca, e eu confio no meu taco."

#6 Vinicius Schuh

Vinicius Schuh
  • Membros
  • 84 posts
  • Gender:Male
  • Location:Bernardo de Irigoyen - Argentina

Postado 26 dezembro 2011 - 15:22

Boa Tarde amigos do Fórum, resolvi o problema do erro que estava me retornando, era uma questão de compatibilidade. Quando há diferença entre as collations, para que o conflito não se manifeste é necessário igualar as mesmas. Se as collations forem iguais, então não há porque o conflito ocorrer. Resumindo, precisava ser passado a seguinte instrução dentro do meu script:

CODE
INNER JOIN
    dbo.Produtos ON BANCO_2.dbo.tblEstoque.ID_Produto
COLLATE
    Latin1_General_CI_AS = dbo.Produtos.CódigoDeBarra


Valeu laugh.gif

Editado por Vinicius Schuh, 03 janeiro 2012 - 09:04 .

"A vida é uma sinuca, e eu confio no meu taco."



Responder



  


0 usuário(s) está(ão) lendo este tópico

0 membros, 0 visitantes, 0 membros anônimos