简体   繁体   English

C#删除数据库ms.access

[英]C# delete database ms.access

I have problem delete data microsoft access database with C# I use this method to add data to microsoft access database 我有问题删除数据微软访问数据库与C#我使用此方法将数据添加到微软访问数据库

public static int autoIncrement(string kalimatSql)
{
    int lastIndex = -1;
    dbCon.Open();
    dbCmd.CommandText = kalimatSql;
    dbCmd.ExecuteNonQuery();
    dbCmd.CommandText = "Select @@Identity";
    lastIndex = Convert.ToInt32(dbCmd.ExecuteScalar());
    dbCon.Close();
    return lastIndex;
}

I call that method with 我用这个方法称呼

myQuiz.id = Global.autoIncrement("INSERT INTO Quizzes (Name) VALUES ('" + myQuiz.name + "')");
Global.quizzes.Add(myQuiz);

I wonder how to delete data from database? 我想知道如何从数据库中删除数据? if I add with that way? 如果我这样添加?
So far I already try this way 到目前为止,我已经尝试过这种方式

public static int deleteData(string kalimatSQL)
{
    int lastIndex = -1;
    dbCon.Open();
    dbCmd.CommandText = kalimatSQL;
    dbCmd.ExecuteNonQuery();
    dbCon.Close();
    return lastIndex;
}

And I call delete method with this way 我用这种方式调用delete方法

if ( listBoxQuizzes.SelectedIndex != -1)  {
    Global.deleteData("DELETE FROM Quizzes WHERE name=" +listBoxQuizzes.SelectedItem.ToString()); 
}

But give error result 但是给出错误结果

"C# Syntax error (missing operator) in query expression 'name = quiz002' " can someone help me fix it? “查询表达式'name = quiz002'中的C#语法错误(缺少运算符)”有人可以帮我修复它吗?

You are missing single quotes around name value ( '' ) 您缺少名称值( '' )周围的单引号

It should be like this: 它应该是这样的:

Global.deleteData("DELETE FROM Quizzes WHERE name = '" + listBoxQuizzes.SelectedItem.ToString() + "'");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM