- 主题:Re: 新手求助,Sqlite如何以一组关系式作unique约束?
以我的知识,啥数据库都实现不了这种逻辑约束吧。只能靠应用解决。说的不对请拍砖。
【 在 miui 的大作中提到: 】
:
: 表中有xmin, xmax, ymin, ymax, z五个数,用x,y去查找z,要求xmin <x<xmax并且ymin<y<ymax, 且结果唯一。
:
: 比如1, 4, 2, 5, 10和2, 5, 3, 5, 20这两行数据就不能在表中共存,因为用(3, 4)这对数去查找,两行数据都符合条件
:
#发自zSMTH@SM-G9960
--
FROM 223.104.41.*
别啥都交给数据库,数据库老老实实增删改查,复杂逻辑交给应用去做,这样扩展性最好
【 在 miui 的大作中提到: 】
: 表中有xmin, xmax, ymin, ymax, z五个数,用x,y去查找z,要求xmin <x<xmax并且ymin<y<ymax, 且结果唯一。
: 比如1, 4, 2, 5, 10和2, 5, 3, 5, 20这两行数据就不能在表中共存,因为用(3, 4)这对数去查找,两行数据都符合条件
--
FROM 117.136.0.*
sqlite 有trigger吗?
在表上写insert 和 update的trigger,
在trigger里如果发现数据不允许就抛异常可以吗
【 在 miui 的大作中提到: 】
: 表中有xmin, xmax, ymin, ymax, z五个数,用x,y去查找z,要求xmin <x<xmax并且ymin<y<ymax, 且结果唯一。
: 比如1, 4, 2, 5, 10和2, 5, 3, 5, 20这两行数据就不能在表中共存,因为用(3, 4)这对数去查找,两行数据都符合条件
:
--
FROM 165.225.233.*
忽略z,每行
--
FROM 222.129.6.*
忽略z 每行四个数据看成坐标系的一个矩形。按要求其实就是矩形不能重叠。
用SQL检查重叠的思路就是遍历每条记录,关联本表,找出4个顶点之一在其中的其它矩形,有的话就代表有重叠。
--
FROM 222.129.6.*