none
Erro de Syntax ao inserir dados no MYSQL atraves do codigo C# RRS feed

  • Pergunta

  •         

    Olá, Estou tento um erro de Syntax bem estranho visto quem a meu ver o  codigo esta correto, já tentei algumas variações mas nao deram certo, o codigo e o erro são estes

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desc, Qtd, Cliente, Valor, Comentario) VALUES ('a', 1, 'a', '00,00', 'a')' at line 1

    string string_de_conexao = PRINCIPAL.ConectDataBase;
                        MySqlConnection conexao;
                        MySqlCommand comando;

                        // Conexão do banco de dados
                        conexao = new MySqlConnection(string_de_conexao);

                        // Abre a conexão
                        conexao.Open();

                        comando = new MySqlCommand("INSERT INTO servicos(Desc, Qtd, Cliente, Valor, Comentario) VALUES (@desc, @qtd, @cliente, @valor, @comentario)", conexao);
                        comando.Parameters.AddWithValue("@desc", Convert.ToString(DescBox.Text));
                        comando.Parameters.AddWithValue("@qtd", Convert.ToInt16(textBox2.Text));
                        comando.Parameters.AddWithValue("@cliente",Convert.ToString( textBox1.Text));
                        comando.Parameters.AddWithValue("@valor",Convert.ToString( ValorBox.Text));
                        comando.Parameters.AddWithValue("@comentario",  Convert.ToString(ComentBox.Text));

                        comando.ExecuteReader();


                        // Executa o comando SQL

                        comando.ExecuteNonQuery();
                        //comando.ExecuteReader();

                        // Fecha a conexão
                        conexao.Close();

                        
    sexta-feira, 3 de julho de 2015 18:33

Respostas

  • You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desc, Qtd, Cliente, Valor, Comentario) VALUES ('a', 1, 'a', '00,00', 'a')' at line 1

    verifica quais variaveis vocÊ informou nas tabelas.

    ex:
    Desc = varchar
    qnt = int
    cliente = varchar
    valor = int (00,00) 
    comentario = varchar

    ele está inserindo no valor com a " , "(virgula) Se voce colocou como int, ele não aceita valores com " , "(virgula) utiliza varchar 


    • Editado Allan Alcântara sexta-feira, 3 de julho de 2015 19:24
    • Marcado como Resposta Leo Longhi sábado, 4 de julho de 2015 21:27
    sexta-feira, 3 de julho de 2015 19:23
  • You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desc, Qtd, Cliente, Valor, Comentario) VALUES ('a', 1, 'a', '00,00', 'a')' at line 1

    verifica quais variaveis vocÊ informou nas tabelas.

    ex:
    Desc = varchar
    qnt = int
    cliente = varchar
    valor = int (00,00) 
    comentario = varchar

    ele está inserindo no valor com a " , "(virgula) Se voce colocou como int, ele não aceita valores com " , "(virgula) utiliza varchar 


    Allan, obrigado por tentar me ajudar, um amigo da empresa já solucionou pra mim, as variáveis estavam OK exceto pelo nome de uma delas, Desc, Desc é o nome de um comando SQL e é possível mas não recomendável q seja usado como nome da coluna, as vezes funciona as vezes da erro como no meu caso, toda via muito obrigado! 
    • Marcado como Resposta Leo Longhi sábado, 4 de julho de 2015 21:27
    sábado, 4 de julho de 2015 21:23

Todas as Respostas

  • You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desc, Qtd, Cliente, Valor, Comentario) VALUES ('a', 1, 'a', '00,00', 'a')' at line 1

    verifica quais variaveis vocÊ informou nas tabelas.

    ex:
    Desc = varchar
    qnt = int
    cliente = varchar
    valor = int (00,00) 
    comentario = varchar

    ele está inserindo no valor com a " , "(virgula) Se voce colocou como int, ele não aceita valores com " , "(virgula) utiliza varchar 


    • Editado Allan Alcântara sexta-feira, 3 de julho de 2015 19:24
    • Marcado como Resposta Leo Longhi sábado, 4 de julho de 2015 21:27
    sexta-feira, 3 de julho de 2015 19:23
  • You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desc, Qtd, Cliente, Valor, Comentario) VALUES ('a', 1, 'a', '00,00', 'a')' at line 1

    verifica quais variaveis vocÊ informou nas tabelas.

    ex:
    Desc = varchar
    qnt = int
    cliente = varchar
    valor = int (00,00) 
    comentario = varchar

    ele está inserindo no valor com a " , "(virgula) Se voce colocou como int, ele não aceita valores com " , "(virgula) utiliza varchar 


    Allan, obrigado por tentar me ajudar, um amigo da empresa já solucionou pra mim, as variáveis estavam OK exceto pelo nome de uma delas, Desc, Desc é o nome de um comando SQL e é possível mas não recomendável q seja usado como nome da coluna, as vezes funciona as vezes da erro como no meu caso, toda via muito obrigado! 
    • Marcado como Resposta Leo Longhi sábado, 4 de julho de 2015 21:27
    sábado, 4 de julho de 2015 21:23