我用C#获取到了ip地址,并将它存到数据库中,但是由于ip是动态的,获取到的ip不同,就会又存到数据库中,但是这就造成了一台电脑,两个信息存到数据库。我怎么做,只存一个ip到数据库,而且是有效的,数据库中也会存获取ip的时间。
看你以什么为主体,假设以某台电脑为主体,广域网内,一般用户的IP和电脑都不是一对一绑定的。
电脑有些信息可以获取到作为唯一key,类似MAC地址之类的,可以用这个来标识
当数据库中已经存了ip ,第二次就做更新而不是添加
那我怎么知道是存有ip的那台电脑的ip变化了,电脑名这些也是可以变化的啊。
@yjcd: 那总有些东西是固定的吧,比如唯一标识(id),第一个获取的时候将ip,或者电脑名存入数据库,第二次就根据id 查找ip 或者数电脑名, 再对这条记录做修改操作
首先你得想办法知道两个IP是同一个信息。
你需要在大脑中强化下:唯一标识 这个概念.
意思就是根据这个东西判定是不是同一个.
你把ip当唯一标识了.但ip又是不唯一的.所以本身就是你的唯一标识弄错了.
那怎么办呢?当然就是找到一个正确的唯一标识.
已解决该问题