使用带有日期的 C# 在 MS Access 97 数据库中清除查询
Posted
技术标签:
【中文标题】使用带有日期的 C# 在 MS Access 97 数据库中清除查询【英文标题】:Clear with query in MS Access 97 database using C# with date 【发布时间】:2021-12-06 21:14:59 【问题描述】:我创建了一个按钮,其中包含指向 MS Access 97 数据库的链接代码和一个删除查询,但是当我运行代码时,没有从数据库中删除任何内容。必须在第一列 id_car
上进行搜索,该列由 XXYYYYZZZZ 组成(XX = 月,YYYY = 年,ZZZZ = 是我不感兴趣的代码)
string MesePartenza = Mese1;
string MeseFinale = Mese2;
OleDbCommand cmd = new OleDbCommand("DELETE * FROM cartellini WHERE id_car BETWEEN '" + MesePartenza + "" + AnnoP.ToString() + "*' AND '" + MeseFinale + "" + AnnoF.ToString() + "*'", connect);
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(cmd);
cmd.ExecuteNonQuery();
【问题讨论】:
如果您根本不使用OleDbDataAdapter
,为什么还要实例化它?只需将其忽略 - 不需要,根本没有帮助。只需创建OleDbCommand
,然后在上面调用.ExecuteNonQuery()
- 就像你正在做的那样 - 这已经足够了!
谢谢你的回答,我还是删除了你推荐的内容但是并没有删除任何东西
【参考方案1】:
打印完成的 sql 并在此处发布。此外,您不能在此处使用通配符。试试:
String sql = "DELETE * FROM cartellini WHERE id_car BETWEEN '" + MesePartenza + AnnoP.ToString() + "0000' AND '" + MeseFinale + AnnoF.ToString() + "ZZZZ'";
Console.WriteLine(sql);
OleDbCommand cmd = new OleDbCommand(sql, connect);
【讨论】:
以上是关于使用带有日期的 C# 在 MS Access 97 数据库中清除查询的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 MS Access 在 C# 中的两个日期之间进行搜索
如何将日期从 C# 存储到 MS-Access 以及如何检索它?