0
我正在处理一个应用程序,其中一个JSP页面将信息填写在表单上并将它们插入到MySQL中的表中。mySQL数据库条目的条件
My table :
+-------- +-------------+------+-----+------------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------- +-------------+------+-----+------------+-------+
|UserID | varchar(10) | NO | PRI | | |
|ino | int(5) | NO | PRI | 0 | |
|epno | int(5) | NO | PRI | 0 | |
|startDate| date | NO | PRI | 0000-00-00 | |
|enddate | date | NO | | | |
|dist | int(4) | YES | | NULL | |
|cost | int(6) | YES | | NULL | |
+---------+-------------+------+-----+------------+-------+
我需要每个用户的StartDate和EndDate期间是唯一的。 此外,没有任何条目应该重叠。
例如,如果userOne进入以下条目
StartDate- April 30,2014 , EndDate:May 5, 2014
且存在于表中的条目:
StartDate- May 2,2014 , EndDate:May 6, 2014
它不应该被允许。
到目前为止,我只指定了多个主键。如果他们没用,我可以改变他们。
请随时提出有关问题的任何问题。 谢谢!
我尝试这样做。它说'你的SQL语法有错误'。 我认为这不受我的MYSQL版本(5.2)的支持。 你能否提出一些其他方法可以解决这个问题? – user3270763
@ user3270763:你是对的,['SIGNAL'](http://dev.mysql.com/doc/en/signal.html)是在MySQL v5.5中引入的。或者,你可以简单地执行一些引起错误的操作,例如调用一个不存在的过程,例如'CALL raise_error;'。 – eggyal