Access 数据库未正确更新
Posted
技术标签:
【中文标题】Access 数据库未正确更新【英文标题】:Access Database Doesn't update properly 【发布时间】:2016-06-26 11:34:16 【问题描述】:我一直在用 C# 创建一个软件。我试图更新我的 Access 数据库中的一些信息。这是我的数据库字段。Date
,total_h
,W_hours
,delay_h
。 Date
是主键。所以我想更新Date="datetimePicker.text"
的数据。这是我尝试过的代码。
try
connection.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = connection;
string update = "update summery_data set total_h='"+tHour+"', delay_h='"+delay+"' WHERE Date= " + dateTimePicker1.Text + " ";
cmd.CommandText = update;
cmd.ExecuteNonQuery();
MessageBox.Show(" Updated successfully");
connection.Close();
catch(Exception ex)
MessageBox.Show(ex.Message);
程序正常运行,没有任何异常,并且还显示“更新成功”消息。但是当我打开并检查数据库时,数据尚未更新。我无法理解问题是什么......?请帮助我有人知道它。
【问题讨论】:
您正在查看数据库的副本。请参阅连接字符串中的 DataDictionary 路径。这是一个糟糕的查询。始终使用参数来避免sql注入,避免格式错误。 您的列有哪些类型? 日期:-日期/时间总小时:-文本,W_小时:-文本,延迟_小时:-文本 Why saving changes to a database fails? 的可能重复项。但是,很多事情都错了, 【参考方案1】:改变
string update = ".... WHERE Date= " + dateTimePicker1.Text + " ";
到
string update = ".... WHERE Date= DateValue ('" + dateTimePicker1.Text + "') ";
【讨论】:
以上是关于Access 数据库未正确更新的主要内容,如果未能解决你的问题,请参考以下文章
MFC程序连接access数据库,目标机出现“未找到提供的程序,该程序未正确安装”