MySqlCommand cmd = new MySqlCommand("sp_data", connection);
cmd.CommandType = System.Data.CommandType.StoredProcedure;
MySqlDataReader rdrdata = cmd.ExecuteReader();
错误:在数据库
中找不到过程或函数“sp_data
”
答案 0 :(得分:15)
请确保您已在连接字符串中以小写字母设置数据库名称。
答案 1 :(得分:1)
发现我的数据库在连接字符串中是大写的,但实际名称是小写的。纠正了这个并且工作得很完美
答案 2 :(得分:0)
您可能会尝试以某种错误的方式将参数传递给过程。该答案无关紧要,但可能会对某人有所帮助。 例如
command = new MySqlCommand("checkUser", con);
command.CommandType = CommandType.StoredProcedure;
//command.Parameters.AddWithValue("@userName", MySqlDbType.VarChar).Value = user.getName();
//command.Parameters.AddWithValue("@pass", MySqlDbType.VarChar).Value = user.getPassword();
command.Parameters.AddWithValue("@userName", user.getName()) ;
command.Parameters.AddWithValue("@pass", user.getPassword());
注释行给了我错误。
答案 3 :(得分:0)
检查您的MySql.Data库是否与您的MySql DB版本相同或更低。就我而言,MySql.Data 8.0.21与innodb 8.0.19不向后兼容。
您可以通过以下查询检查MySql DB版本:
SHOW VARIABLES LIKE "%version%";