Overflow occurred during data type conversion
11/09/2009
0
Pessoal, tó com o problema em uma consulta SQL para carregar os dados da Tabela Produto na tela Vendas, quando executo o SQL no IBExpert ele retorna o seguinte erro: Overflow occurred during data type conversion. conversion error from string ´NOTEBOOK DELL´ e quando rodo aplicação não traz nenhum registro, só aparece os títulos das colunas na Dbgrid. Segue abaixo o comando SQL.
Observação: pelo que eu pude observar o error ocorre no campo ´NOME´ da Tabela Produtos.
SELECT P.PRODUTOID CODIGO, P.NOME, P.ESTOQUE, P.VLRVENDA,
F.NOMEFANTASIA FORNECEDOR, C.NOME CATEGORIA
FROM CATEGORIA C, FORNECEDOR F, PRODUTOS P
WHERE P.NOME = C.CATEGORIAID
AND P.NOME = F.FORNECEDORID
Mais uma vez, muito obrigado.
Observação: pelo que eu pude observar o error ocorre no campo ´NOME´ da Tabela Produtos.
SELECT P.PRODUTOID CODIGO, P.NOME, P.ESTOQUE, P.VLRVENDA,
F.NOMEFANTASIA FORNECEDOR, C.NOME CATEGORIA
FROM CATEGORIA C, FORNECEDOR F, PRODUTOS P
WHERE P.NOME = C.CATEGORIAID
AND P.NOME = F.FORNECEDORID
Mais uma vez, muito obrigado.
Caze
Curtir tópico
+ 0
Responder
Post mais votado
25/01/2021
Já tem 12 anos essa resposta do Afarias
Ao que me parece esse erro ocorre devido estar comparando campo varchar com campo inteiro na sua where. O certo seria comparar campos com datatypes iguais.
ou
[/code]
"Procure no Google por uma apostila de SQL, dê uma estudada que vc vai precisar muito programando com bancos de dados."
Porém se o Caze perguntou aqui é sinal que ele já está fazendo isso. Caso não possa tentar ajudar acho desnecessário ser grosseiro ou dizer o obvio.Ao que me parece esse erro ocorre devido estar comparando campo varchar com campo inteiro na sua where. O certo seria comparar campos com datatypes iguais.
SELECT P.PRODUTOID CODIGO, P.NOME, P.ESTOQUE, P.VLRVENDA, F.NOMEFANTASIA FORNECEDOR, C.NOME CATEGORIA FROM CATEGORIA C, FORNECEDOR F, PRODUTOS P WHERE P.NOME = C.nomecategoria AND P.CodFrnecedor = F.FORNECEDORID
ou
SELECT P.PRODUTOID CODIGO, P.NOME, P.ESTOQUE, P.VLRVENDA, F.NOMEFANTASIA FORNECEDOR, C.NOME CATEGORIA FROM CATEGORIA C, FORNECEDOR F, PRODUTOS P WHERE P.NOME = P.Codigo = C.CATEGORIAID AND P.NOME = F.Nome
[/code]
Marcus Milagres
Responder
Mais Posts
11/09/2009
Afarias
WHERE P.NOME = C.CATEGORIAID AND P.NOME = F.FORNECEDORID
Imagino que os campos F.FORNECEDORID e C.CATEGORIAID são INTEGER, e P.NOME são VARCHAR ... de forma que sua cláusula WHERE me parece inválida.
T+
Responder
12/09/2009
Afarias
Procure no Google por uma apostila de SQL, dê uma estudada que vc vai precisar muito programando com bancos de dados.
Responder
Clique aqui para fazer login e interagir na Comunidade :)