当前位置:编程学习 > C#/ASP.NET >>

如何设计保存到数据库之前检查一下是否有相同记录存在,有就不添加.

如何设计保存到数据库之前检查一下是否有相同记录存在,有就不添加。
在VS2008里面写还是sql里面写了。求助。又该如何写呢 --------------------编程问答-------------------- 若果有多个客户端要考虑并发问题。写在存储过程里好了 --------------------编程问答-------------------- 相同的记录指的是什么呢,难道是每个字段的内容都相同吗,一般会设置一个自动递增的数据库字段,这样记录是不会重复的。

除非十分有必要检查,要不然不是操作了两次数据库。 --------------------编程问答-------------------- 在数据层,用存储过程实现比较合理。
--------------------编程问答-------------------- 写存储过程,在存储过程中根据自增主键ID判断,如果ID>0就,update 反之 insert --------------------编程问答-------------------- 也可在程序中查找数据库中所要查找的记录,返回影响行数,如果>0则无记录,可以插入 --------------------编程问答-------------------- 一般是判断 ID或者外键是否唯一 可以用Ajax或者存储过程 --------------------编程问答-------------------- SQL里这样写

select max(id)+1 from tablename


这样也排除不了并发。

还是用存储过程吧 --------------------编程问答-------------------- 这个写在哪里都可以,VS项目中进行insert前检查,或者使用存储过程insert前检查。不过如果涉及到多张表都要检查,那还不如直接在VS的逻辑中去写。 --------------------编程问答-------------------- 在insert 之前检测  --------------------编程问答-------------------- if exists(select * from tablename where id=@id) insert..
或先查询count(*) --------------------编程问答-------------------- 输入时判断一下,有相同数据就提示不能添加相同数据不就行了。 --------------------编程问答-------------------- 如果你要输入的是name就查询数据库 select *from  table where name=@name  
if(查询的结果>0){
提示不能重复输入
}else{

}
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,