高分请教一个问题,关于在datagridview中直接修改数据的问题

jcxpy910 2016-03-17 04:14:27
首先,如图。这是我调用的一个存储过程并显示在控件中,因为要做一个排班的功能,所以用了存储过程自动生成了时间。那么问题就来了,我原来是没有调用存储过程的,直接绑定的一个表,然后使用如下代码,可以直接在datagridview中进行数据的修改与添加。现在调用存储过程后就不行了。当然现在表中的字段只有一个name,其他的时间都是自动生成。我想请教各位大神,比如我在2002-3-17这个时间下面输入一个数据,应该怎么改代码,是改存储过程还是C#里的代码,才能把数据保存在表里并且以后能通过时间查询出来。现在点击保存没反应。


 sqlcon.Open();
//用SqlCommandBuilder自动为SqlDataAdapter生成Insert、Update、Delete命令

SqlCommandBuilder cb = new SqlCommandBuilder(sda);

sda.Update(ds);

dataGridView1.Update();

MessageBox.Show("保存成功!");

sqlcon.Close();
...全文
177 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
BitCoffee 2016-03-18
  • 打赏
  • 举报
回复
或者先从数据库里面读取需要修改的数据字段,填充到一个dataset里面,然后遍历datagridview的数据,来根据你的要求修改dataset里面的数据,然后批量更新dataset.
BitCoffee 2016-03-18
  • 打赏
  • 举报
回复
循环遍历datagridview的数据,然后拼接你需要的update语句,这样去更新数据.
jcxpy910 2016-03-18
  • 打赏
  • 举报
回复
怎么随便存啊,大哥。举个栗子可好,或者给点参考代码 @FoxDave @JustinLiu27
Justin-Liu 2016-03-18
  • 打赏
  • 举报
回复
随便存成什么东西好了
qbilbo 2016-03-18
  • 打赏
  • 举报
回复
你说的这种情况SqlCommandBuilder帮不了你,只能自己写Insert,Update语句或存储过程。 在sda.Update前: sda.UpdateCommand.CommandText = "...."; sda.UpdateCommand.Parameters.Add(...); sda.InsertCommand.CommandText = "...."; sda.InsertCommand.Parameters.Add(...);
jcxpy910 2016-03-18
  • 打赏
  • 举报
回复
数据库中确实没有这些字段,而且我的意思也是把时间作为某一个字段的数据,只是在datagridview中要像图片中那样显示而已,请问有没有办法解决
jcxpy910 2016-03-18
  • 打赏
  • 举报
回复
求帮助。。。。。。。
EdsionWang 2016-03-17
  • 打赏
  • 举报
回复
其他字段都是自动生成的 --> 能否理解成数据库表中没有这些字段? 如果都没这些字段,你要存什么数据?你想往哪存?你是不是该想想你的数据库该怎么设计了呢

110,571

社区成员

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

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

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