C# 我需要查询生成器c中的帮助-删除不起作用
我有一个c和ms access的小项目。我使用查询生成器在ms access中管理我的表 问题是,select查询工作正常,update查询工作正常,但delete不工作,并且没有错误消息 请帮忙C# 我需要查询生成器c中的帮助-删除不起作用,c#,C#,我有一个c和ms access的小项目。我使用查询生成器在ms access中管理我的表 问题是,select查询工作正常,update查询工作正常,但delete不工作,并且没有错误消息 请帮忙 public DataSet Update(DataSet ds) { using (cn) { OleDbDataAdapter adapter = new OleDbDataAdapter();
public DataSet Update(DataSet ds)
{
using (cn)
{
OleDbDataAdapter adapter = new OleDbDataAdapter();
string queryString = "SELECT [taskId],[resourceId] FROM [mytable]";
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + _conStrName + ";User Id=admin;Password=;";
OleDbConnection connection = new OleDbConnection(cn.ConnectionString);
adapter.SelectCommand = new OleDbCommand(queryString, connection);
adapter.SelectCommand.CommandText = queryString;
OleDbCommandBuilder builder = new OleDbCommandBuilder(adapter);
adapter.Update(ds.Tables["mytable";"]);
return ds;
}
使用:
如果您正在使用OleDb,请尝试以下操作:
public static int DeleteStudentInfo(long studentNum)
{
var cmd = new OleDbCommand("DELETE FROM Students WHERE studentID = @studentId");
cmd.Parameters.Add("@studentId", OleDbType.BigInt).Value = studentNum;
return CallNonQuery(cmd);
}
private static int CallNonQuery(OleDbCommand query)
{
int rowsAffected;
var conn = new OleDbConnection(ConfigSettingsManager.DBConnectionString);
query.Connection = conn;
try
{
conn.Open();
rowsAffected = query.ExecuteNonQuery();
}
catch (Exception)
{
return -1;
}
finally
{
conn.Close();
}
return rowsAffected;
}
将ConfigSettingsManager.DBConnectionString替换为您的连接字符串。请发布不起作用的SQL代码。您尝试使用的代码示例会有所帮助,您希望人们如何诊断您的问题?公共数据集更新数据集ds{using cn{OleDbDataAdapter=新建OleDbDataAdapter;字符串queryString=从[mytable]中选择[taskId],[resourceId];cn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;数据源=+\u conStrName+;用户Id=admin;密码=;;OleDbConnection connection=new OleDbConnectioncn.ConnectionString;adapter.SelectCommand=new OleDbCommandqueryString,connection;我从这里获取了代码,无需修改写入删除…………因为我使用命令生成器
DELETE FROM Store_Information WHERE store_name = "Los Angeles"
public static int DeleteStudentInfo(long studentNum)
{
var cmd = new OleDbCommand("DELETE FROM Students WHERE studentID = @studentId");
cmd.Parameters.Add("@studentId", OleDbType.BigInt).Value = studentNum;
return CallNonQuery(cmd);
}
private static int CallNonQuery(OleDbCommand query)
{
int rowsAffected;
var conn = new OleDbConnection(ConfigSettingsManager.DBConnectionString);
query.Connection = conn;
try
{
conn.Open();
rowsAffected = query.ExecuteNonQuery();
}
catch (Exception)
{
return -1;
}
finally
{
conn.Close();
}
return rowsAffected;
}