嘿伙计们希望有人可以帮助我解决一些mysql / visual basic在删除行时通过visual basic方法运行删除语句但是同样的语句在命令行中运行sql这里是VB语句:
public void removeBookFromCollection(int bookID)
{
try{
conn = new MySqlConnection(cs);
conn.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
cmd.CommandText = "DELETE FROM books WHERE Id=" + bookID;
System.Diagnostics.Debug.WriteLine("Deleted book :" + bookID);
}
}
通过使用测试表格按钮多次激活此方法后,我使用cmd mysql检查是否更新了mydb并且它没有<“SELECT * FROM books”>
然后我通过命令行运行完全相同的删除语句,它没有错误工作我想知道是否有人可以帮助我通过VB工作语句提前感谢。
答案 0 :(得分:1)
您需要调用ExecuteNonQuery
方法来实际运行代码中的命令。您的解决方案是按如下方式修改它:
using (MySqlConnection connection = new MySqlConnection(cs)
{
conn.Open();
MySqlCommand cmd= new MySqlCommand();
cmd.Connection = conn;
cmd.CommandText = "DELETE FROM books WHERE Id=" + bookID;
cmd.ExecuteNonQuery();
System.Diagnostics.Debug.WriteLine("Deleted book :" + bookID);
}