阻止用户在表中插入重复的行

时间:2014-04-28 14:57:05

标签: php sql sqlite

所以我有一个数据库可以很好地插入数据。但是我需要它,因此其中3列永远不会与另外3列相同。

E.g第3期2014年4月28日房间027.

我不认为使字段UNIQUE会有所帮助,所以我能做的最好的事情就是做一个SQL检查,看看这3个是否已经存在,if ($row == 1)然后echo“不能输入重复

 else {   $sql= "INSERT INTO Booking (Date, Period, Type, RoomID, Username) VALUES ('$bookdate','$bookperiod','$booktype','$bookroom','$username')";   
    $insert = sqlite_exec($con,$sql) }

还是有更好的解决方法吗?

1 个答案:

答案 0 :(得分:1)

您需要的是复合唯一索引。 “复合”索引具有多个列。您可以使用以下方法创建它:

create unique index booking_date_period_roomid on booking(Date, Period, RoomId)

您也可以使用create table关键字将其添加到unique语句中。