首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

判断数据库中有数据就更新数量 没有就插入数据?该如何解决

2012-01-07 
判断数据库中有数据就更新数量 没有就插入数据??我在写热门搜索`思路是用一张SQL表存用户能搜到结果大于1

判断数据库中有数据就更新数量 没有就插入数据??
我在写热门搜索`
思路是用一张SQL表   存用户能搜到结果大于1的搜索字  
但遇到一问题就是如果数据库中已经有了该关键字那不就重复了?
我的代码这样写的`:

                int   newcount   =   1;
                try
                {
                        SqlCommand   upcount   =   new   SqlCommand( "update   aspnet_HotSearch   set   Count   =   Count+1   Where   KeyWord= ' "   +   key   +   " ' ",mysqlSqlConnection);
                        upcount.ExecuteNonQuery();
                }
                catch
                {
                        SqlCommand   intoKey   =   new   SqlCommand( "insert   into   aspnet_Hot(Key,Count)   value( ' "   +   key   +   " ', ' "   +   newcount   +   " ') ",   mysqlSqlConnection);
                        intoKey.ExecuteNonQuery();
                }

但无用   所以请教下`该如何写`
顺便看看热门搜索`有没有更好的思路?

[解决办法]
写成存储过程,在存储过程里判断
[解决办法]
怎么能用try...catch来判断呢,你不要效率么.
把插入跟更新分别写成方法.用IF去判断该调用哪个
[解决办法]
lz写个触发器,在每次插入的时候检查是否已经存在要插入的数据,如果存在则更新改记录
[解决办法]
写过存储过程,利用存储过程的返回值来判断是更新还是插入
[解决办法]
up..
[解决办法]
写3个方法:查找,更新,插入
先用查找判断存不存在,一般不存在会返回-1,存在会返回找到的条数;
然后用
if(num==-1){插入;}else{更新;}

热点排行