c# - mysql数据输入问题
问题描述
我有这段代码用于将数据输入 mysql,但我发现了一个错误,上面写着:
“MySql.Data.MySqlClient.MySqlException:'您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的 ''11/05/2018)' 附近使用的正确语法”
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();
非常感谢你们中可以帮助我的人。
解决方案
您在最后一个属性上缺少右引号:
...,'" + fecharev + ");";
应该
...,'" + fecharev + "');";
推荐阅读
- visual-studio-code - 使用 WSL 解释器在 VScode 中使用 AREPL
- python - 文件不是 zip 文件错误,但我没有打开 zip 文件
- php - 将两个 Laravel 集合与交替行组合
- javascript - (JavaScript) 如何防止用户点击已经被点击的井字游戏?
- c++ - 在头文件中包含大量向量
- linux - 如何使用 cmake 为 jsoncpp 0.10.7 指定共享库的安装目录?
- python - 将变量传递给选择查询时出现“mysql.connector.errors.InternalError: Unread result found”错误
- r - 在 glmer 混合效应模型中加入随机项;错误信息:收敛失败
- swift - 如何快速检测(比如说)2 秒的不活动?
- django - “这是必填栏。” DRF