一个DataSet更新问题,请各位帮帮忙?

esimer 2004-06-07 11:48:42
准确的讲,这应该是一个SqlServer和Access的问题。
我将DataGrid与DataSet绑定在一起,DataSet有十几个表,每个表都是通过适配器来和数据库相连的,查询语句都是清一色的“Select * from 表名”。
数据库既可以用SqlServe也可以用Access.
我在数据库里面设置所有的ID都为自动增长的列,这样我在插入,修改记录的时候都可以直接在DataGrid中修改了。(调用适配器的Updata方法。)
但现在出问题了,在SqlServer中插入,修改都没问题,
但Access中可以插入,但不能修改。
请问这是为什么,如何更改Access数据库才能让Access可以更改????

错误提示如下:
对于不返回任何键列信息的SelectCommand不支持UpdataCommand的动态SQL升成。

我明明写了返回键列信息的SelectCommand啊(每个适配器都有Select * from 表名)啊;

而且最奇怪的就是插入可以但更新不行,让我觉得是Access的问题,但它的提示又让我晕头转向。。。。。。
...全文
128 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
esimer 2004-06-07
  • 打赏
  • 举报
回复
呵呵,厉害啊,搞定了。能告诉我为什么一定要设置pk吗?
还有就是我从SqlServer导出到Access的时候或用Access从SqlServer导入的时候,为什么pk属性没有跟着过来呢,怎样才能跟着过来呢???
milkbb 2004-06-07
  • 打赏
  • 举报
回复
没设主键
Montaque 2004-06-07
  • 打赏
  • 举报
回复
设置pk
yemao20 2004-06-07
  • 打赏
  • 举报
回复
up
ChinaKable 2004-06-07
  • 打赏
  • 举报
回复
up
milkbb 2004-06-07
  • 打赏
  • 举报
回复
设PK是commandBuilder的要求。
dahuzizyd 2004-06-07
  • 打赏
  • 举报
回复
CommondBuilder要生成对应的UpdateCommand,DeleteCommand,InsertCommand的时候要求在SelectCommand中包含主键

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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