This looks wrong:
<pre>Using conn As New MySqlConnection(ConStrMySql),
cmd As New MySqlCommand(sql, conn)
cmd.Parameters.Add("@Prod", MySqlDbType.VarChar).Value = "'%" & ProdInput & "%'"
conn.Open()
There should not be quote marks surrounding the value you're passing. The Parameter object takes care of the quote marks for you. It should be:
<pre>Using conn As New MySqlConnection(ConStrMySql),
cmd As New MySqlCommand(sql, conn)
cmd.Parameters.Add("@Prod", MySqlDbType.VarChar).Value = "%" & ProdInput & "%"
conn.Open()
Other than that, if it's still a problem, you have no choice but to set a breakpoint at the start of the GetMySqlData function and run the code. When the breakpoint is hit, step through the code and examine variables, watch what happens and check the SQL statement it builds. Chances are really good your code is building an SQL statement that doesn't match any records or is not valid SQL.