【问题标题】:problems entering data into mysqlmysql数据输入问题
【发布时间】:2018-05-05 22:06:27
【问题描述】:

我有这段代码用于向 mysql 输入数据,但我发现一个错误提示:

"MySql.Data.MySqlClient.MySqlException: '您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以获取在 ''11/05/2018)' 行附近使用的正确语法1'"

    private void Button_Click(object sender, RoutedEventArgs e)
    {

        string especie = txt1.Text;
        string nombre = txt2.Text;
        string fechanac = txt3.Text;
        string fecharev = txt4.Text;
        int numanimales = 0;
        int cont = 0;

        var dbCon = DBConnection.Instance();
        dbCon.DatabaseName = "animalia";

        if (dbCon.IsConnect())
        {
            string query = "SELECT COUNT(*) FROM ANIMALES;";
            var cmd = new MySqlCommand(query, dbCon.Connection);
            numanimales = Convert.ToInt32(cmd.ExecuteScalar());
        }

        int id = numanimales + 1;

        if (dbCon.IsConnect())
        {
            if (especie == "" || nombre == "" || fechanac == "" || fecharev == "")
            {
                MessageBox.Show("Introduzca todos los datos");
            }
            else
            {
                cont = 1;

                MySqlDataReader reader;

                string query = "INSERT INTO ANIMALES VALUES (" + id + ",FALSE,'" + especie + "','" + nombre + "','" + fechanac + "','" + fecharev + "');";

                var cmd = new MySqlCommand(query, dbCon.Connection);
                reader = cmd.ExecuteReader();

                MessageBox.Show("Animal añadido");
                reader.Close();
            }

            if (cont == 1)
            {
                this.Close();
            }


        }
    }
}

这部分代码出现错误

MySqlDataReader reader;

            string query = "INSERT INTO ANIMALES VALUES (" + id + ",FALSE,'" + especie + "','" + nombre + "','" + fechanac + "','" + fecharev + ");";

            var cmd = new MySqlCommand(query, dbCon.Connection);
            reader = cmd.ExecuteReader();

            MessageBox.Show("Animal añadido");
            reader.Close();

非常感谢那些可以帮助我的人。

【问题讨论】:

标签: c# mysql .net wpf


【解决方案1】:

您在最后一个属性上缺少右引号:

...,'" + fecharev + ");";

应该是

...,'" + fecharev + "');";

【讨论】:

  • 还是不行....你能写完整行吗?我最后的括号是棕色的,好像有什么东西没有正确闭合。
  • 由于缺少勾选,现在看起来是正确的。可以贴一下生成的SQL语句吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-27
  • 1970-01-01
  • 1970-01-01
  • 2019-02-21
  • 2012-05-04
  • 2016-05-20
相关资源
最近更新 更多