OleDbCommandBuilder 的奇怪问题,一碰到ACCESS数据库表中的日期型字段就出错!

kb1024 2003-10-17 07:56:06
我想用 DataAdapter.Update 更新表中的数据,代码是这样的:

string strSQL = "select * from Register order by ID";
OleDbConnection myConnection = new OleDbConnection(GetConnectionString());
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(strSQL,myConnection);
OleDbCommandBuilder myCommandBuilder = new
OleDbCommandBuilder(myDataAdapter);
try
{
myDataAdapter.Update(myDataSet, "Register");
}
catch(Exception ex)
{
throw ex;
}
finally
{
myConnection.Close();
}

DataSet 是从 DataGrid 里来的;
SQL 语名是 OleDbCommandBuilder 自动生成的;
我的表里有一个日期型字段,不修改这个字段时没有任何问题,程序工作正常;
一旦修改了这个字段的值,出错,提示 "INSERT INTO" 语句(新增一条记录时,插入
记录涉及到这个日期型字段)或者 "UPDATE" 语句(修改 Update 字段时)出错;



我用 SQL Server 试了一下没有出错,可以确定是 Access 数据库语法规则不一样的问
题了!

怎么样把 CommandBuilder 生成的语句,怎么样改成 "insert into Register
(datetime) values (#" + DateTime + "#)" 这种形式呢?
...全文
42 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
kb1024 2003-10-18
  • 打赏
  • 举报
回复
up!
qdubit 2003-10-17
  • 打赏
  • 举报
回复
强烈关注!

7,712

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧