olá a todos. Estou com um problema em minha aplicação!
estou fazendo uma consulta em que busco campos dos tipos: int, text e varchar. No meu arquivo .java, eu consigo obter os resultados de alguns campos com o ResultSet rs.getString() e rs.getInt();
Porém, os campos que são do tipo text não são trazidos, a mensagem exibida de erro é a seguinte:
Os tipos de dados text, ntext e image não podem ser comparados ou classificados, exceto ao usar o operador IS NULL ou LIKE.
Gostaria de saber se alguem pode me indicar como tratar esta questão!!! (sem ter que mexer no tipo do banco)
Alguém???
Agradeço antecipadamente!
Isso é MS-SQL Server?
Manda a consulta…
provavelmente tu tá usando um ‘in’ ou um ‘having’ que realmente não pode ser usado.
Abraço!
É MS-SQL Server mesmo!!!
Eis a pequena consulta:
SELECT TOP 1 p.Id, p.Nome, p.RegistroMS, p.Metodo, p.Finalidade, p.EstabReag, p.EstabReagUso, p.Lineabilidade , p.Sensibilidade, p.Especificidade, p.NomeOriginal, p.Traducao, p.PalavraChave, p.LimiteDeteccao, p.OutrasAmostras, l.Descricao, a.Descricao, m.Descricao, t.Descricao, c.Conservacao
FROM produto p, linha l, amostra a, tecnica t, marca m, Conservacao c
WHERE p.Id = <idPassado>
and p.IdLinha = l.id
and p.IdConservacao = c.id
and p.IdMarca = m.Id
ORDER BY p.Nome
Onde os campos separados são do tipo text em minha base de dados.
retira aquele ‘top’, se o teu campo produto.id é igaul a um dos tipos mencionados no erro poder estar dando problema
o produto.id é int.
os do tipo text são somente:
p.Metodo, p.Finalidade, p.EstabReag, p.EstabReagUso, p.Lineabilidade
se eu os retiro, a query roda fino!
estou usando a seguinte query agora:
SELECT p.RegistroMS, p.Id, p.Nome, p.Sensibilidade, p.Especificidade, p.NomeOriginal, p.Traducao,
p.PalavraChave, p.LimiteDeteccao, p.OutrasAmostras, l.Descricao, a.Descricao, m.Descricao,
t.Descricao, c.Conservacao, p.Finalidade, p.EstabReag, p.EstabReagUso, p.Metodo, p.Lineabilidade
FROM produto p
LEFT OUTER JOIN linha l
ON l.id = p.IdLinha
LEFT OUTER JOIN Amostra_Produto ap
ON ap.IdProduto = p.Id
LEFT OUTER JOIN amostra a
ON a.Id = ap.IdAmostra
LEFT OUTER JOIN Tecnica_Produto tp
ON tp.IdProduto = p.Id
LEFT OUTER JOIN tecnica t
ON t.Id = tp.IdTecnica
LEFT OUTER JOIN marca m
ON m.Id = p.IdMarca
LEFT OUTER JOIN Conservacao c
ON c.id = p.IdConservacao
Direto no Editor de query do meu BD ele roda fino, mas se coloco no Java, aí ja da o erro dizendo que os campos text não podem ser comparados ou classificados, exceto ao usar o operador IS NULL ou LIKE.
Alguma dica???