Erro no insert MySQL CSharp ASP.Net

.NET

26/09/2013

Olá pessoal, sou novo e não consigo achar o erro, coloquei todos campos no MySQL VARCHAR e mesmo assim dá erro no Insert
código:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Web.Security;
using System.Threading.Tasks;

public partial class adm_Usuarios : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }



    protected void bntCadastrar_Click(object sender, EventArgs e)
    {
        string StrCon = ConfigurationManager.ConnectionStrings["IPConnectionString"].ConnectionString;
        string SQL = "INSERT INTRO im_user(nome, email, email2, senha, departamento, apelido, acesso, periodo, tel1, tel2, creci, endereco, rg, cpf, observacoes) VALUES (";
        SQL += "@nome, @email, @email2, @senha, @departamento, @apelido, @acesso, @periodo, @tel1, @tel2, @creci, @endereco, @rg, @cpf, @observacoes)";
        using (MySqlConnection conn = new MySqlConnection(StrCon))
        {
            using (MySqlCommand cmd = new MySqlCommand(SQL, conn))
            {
                conn.Open();

                cmd.Parameters.AddWithValue("@nome", txtNome.Text);
                cmd.Parameters.AddWithValue("@email", txtEmail.Text);
                cmd.Parameters.AddWithValue("@email2", txtEmail2.Text);
                cmd.Parameters.AddWithValue("@senha", txtSenha.Text);
                cmd.Parameters.AddWithValue("@departamento", ddlAcesso.Text);
                cmd.Parameters.AddWithValue("@apelido", txtApelido.Text);
                cmd.Parameters.AddWithValue("@acesso", ddlAcesso.Text);
                cmd.Parameters.AddWithValue("@periodo", ddlPeriodo.Text);
                cmd.Parameters.AddWithValue("@tel1", txtTel1.Text);
                cmd.Parameters.AddWithValue("@tel2", txtTel2.Text);
                cmd.Parameters.AddWithValue("@creci", txtCreci.Text);
                cmd.Parameters.AddWithValue("@endereco", txtEndereco.Text);
                cmd.Parameters.AddWithValue("@rg", txtRG.Text);
                cmd.Parameters.AddWithValue("@cpf", txtCPF.Text);
                cmd.Parameters.AddWithValue("@observacoes", txtObs.Text);

                if (cmd.ExecuteNonQuery() > 0)
                {
                    lblMsg.Text = "Cad Okey";
                }
                else
                {
                    lblMsg.Text = "Cad Erro";
                }

            }
        }
    }
}


erro:
Erro de Servidor no Aplicativo ''/''.
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 ''im_user(nome, email, email2, senha, departamento, apelido, acesso, periodo, tel1'' at line 1
Descrição: Ocorreu uma exceção sem tratamento durante a execução da atual solicitação da Web. Examine o rastreamento de pilha para obter mais informações sobre o erro e onde foi originado no código.

Detalhes da Exceção: MySql.Data.MySqlClient.MySqlException: 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 ''im_user(nome, email, email2, senha, departamento, apelido, acesso, periodo, tel1'' at line 1

Erro de Origem:


Linha 47: cmd.Parameters.AddWithValue("@observacoes", txtObs.Text);
Linha 48:
Linha 49: if (cmd.ExecuteNonQuery() > 0)
Linha 50: {
Linha 51: lblMsg.Text = "Cad Okey";


Arquivo de Origem: c:\inetpub\wwwroot\JCom\adm\Usuarios.aspx.cs Linha: 49

Rastreamento de Pilha:


[MySqlException (0x80004005): 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 ''im_user(nome, email, email2, senha, departamento, apelido, acesso, periodo, tel1'' at line 1]
MySql.Data.MySqlClient.MySqlStream.ReadPacket() +383
MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId) +116
MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId, Int32& affectedRows, Int64& insertedId) +54
MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force) +145
MySql.Data.MySqlClient.MySqlDataReader.NextResult() +1258
MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior) +2509
MySql.Data.MySqlClient.MySqlCommand.ExecuteReader() +37
MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery() +164
adm_Usuarios.bntCadastrar_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\JCom\adm\Usuarios.aspx.cs:49
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9552602
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +103
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724


Informações sobre a Versão: Microsoft .NET Framework Versão:4.0.30319; Versão do ASP.NET:4.0.30319.18045
Alexandre Alves

Alexandre Alves

Curtidas 0

Respostas

Paulo Freire

Paulo Freire

26/09/2013

Veja que sua string está incorreta

string SQL = "INSERT INTRO im_user

deve ser

string SQL = "INSERT INTO im_user
GOSTEI 0
Alexandre Alves

Alexandre Alves

26/09/2013

Obrigado Paulo, depois dessa fiquei até com vergonha rssss... tem como tratar melhor os erros no ASPX???
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

26/09/2013

Você pode usar um block try-catch para tratar as exceções.
Veja como fazer isso neste link: [url]http://msdn.microsoft.com/pt-br/library/0yd65esw(v=vs.90).aspx[/url]
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

26/09/2013

Problema resolvido, estou concluindo o tópico.
GOSTEI 0
POSTAR