设计的表是没有主键的,也就是可能会有很多相同的数据,初衷是因为每台终端每五分钟上传一条数据(包含终端的ID,IP,端口等数据,也就是随时会变的数据,除了终端ID)分别保存到四张表,而每张表用终端ID关联查询。如果设自增主键感觉没有必要,因为可能除了这个主键其他数据都相同,而且不好关联查询。
现在具体想要问的是:如何让oracle在没有主键的情况下有完全相同的一条记录时不插入数据?
Merge需要on和id,where not exist也是相同情况,
不知道还有什么方法?需要重新设计数据库吗?
设计的表是没有主键的,也就是可能会有很多相同的数据,初衷是因为每台终端每五分钟上传一条数据(包含终端的ID,IP,端口等数据,也就是随时会变的数据,除了终端ID)分别保存到四张表,而每张表用终端ID关联查询。如果设自增主键感觉没有必要,因为可能除了这个主键其他数据都相同,而且不好关联查询。
现在具体想要问的是:如何让oracle在没有主键的情况下有完全相同的一条记录时不插入数据?
Merge需要on和id,where not exist也是相同情况,
不知道还有什么方法?需要重新设计数据库吗?
初衷是因为每台终端每五分钟上传一条数据
感觉逻辑有点问题,上传时间应该是不会一样的,所以对于一个终端来说,是不是重复只需要判断上传时间就可以了