首页 新闻 会员 周边 捐助

SQL数据库问题

0
悬赏园豆:30 [待解决问题]

用户提交数据到数据库里,第一次提交进去后,如果在同一段时间内再提交一次,怎么覆盖上一次的数据呢,我没有很好的解决思路!

菜鸟太菜的主页 菜鸟太菜 | 初学一级 | 园豆:134
提问于:2016-05-18 17:09
< >
分享
所有回答(6)
0

判断是否存在再添加

小光 | 园豆:1766 (小虾三级) | 2016-05-18 17:12

如果存在呢,那我第二次提交的数据怎么把前面的数据覆盖掉?

支持(0) 反对(0) 菜鸟太菜 | 园豆:134 (初学一级) | 2016-05-18 17:15

@菜鸟太菜: 

1.根据主键将数据删除放入备份表中或者直接物理删除

2.根据主键使用update将列的数据逐个覆盖

支持(0) 反对(0) 小光 | 园豆:1766 (小虾三级) | 2016-05-18 17:17

@小光: 我是MVC的,EF没有update,我可以用什么办法呢

支持(0) 反对(0) 菜鸟太菜 | 园豆:134 (初学一级) | 2016-05-18 17:27

@菜鸟太菜: 我没有用过EF,你可以参考这个 http://blog.csdn.net/jin8907/article/details/8688072

EF的修改貌似是SaveChanges();  你用EF,它的增删改查是必须会的,需要学一下

支持(0) 反对(0) 小光 | 园豆:1766 (小虾三级) | 2016-05-18 17:31
0

EF的话,先通过Select获取到记录,然后对记录进行修改,再Save

waiter | 园豆:1000 (小虾三级) | 2016-05-18 19:40
0

 EF 怎么可能没有更新操作,你逗我的吗?

Company | 园豆:32 (初学一级) | 2016-05-19 12:58
0

/// <summary>
/// 修改一个实体
/// </summary>
/// <param name="db">数据库上下文</param>
/// <param name="entity">实体</param>
public int Update(TestModel entity)
{
using (TestEntities db = new TestEntities ())
{

//对应的表
db.Test.Attach(entity);
db.Entry(entity).State = System.Data.Entity.EntityState.Modified;
return db.SaveChanges();
}
}

Artikel | 园豆:387 (菜鸟二级) | 2016-05-19 18:43
0

EF的话 先查再修改!!!

cnfanhua | 园豆:283 (菜鸟二级) | 2016-05-20 10:46
0

这是什么需求,防止重复提交吗,也不是这样做啊

独钓寒江翁 | 园豆:563 (小虾三级) | 2016-05-20 17:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册