以及时的方式删除或插入插入功能

时间:2016-10-18 20:34:07

标签: sql

有没有办法可以删除插入条目或阻止在表格中插入条目。我只是想避免错误重复输入系统。 例如

**Date_Timing**                **team**         **score**
2016-10-16-10:32:08            baseball            11
2016-10-16-10:32:11            basketball           8
2016-10-16-10:32:12            Soccer              12  
2016-10-16-10:32:14            Soccer              12
2016-10-16-10:32:15            baseball            10
2016-10-16-10:32:16            baseball            10

我想避免上面指出的重复条目。每2秒自动删除任何重复的条目应该没问题。我用过

delete
    from Sport
    where date_timing >= dateadd(MINUTE, 1,getdate());

但是没有为我效劳!

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

您可以定义unique constraint,因此表中只能存在具有相同数据的1行。这样,如果您使用团队得分的相同组合插入新行,数据库将引发异常。

create table sport
(
  date_timing   timestamp,
  team          text,
  score         int,

  unique (team, score)
);

答案 1 :(得分:0)

您可以创建每次插入操作发生时执行的触发器。

CREATE TRIGGER trgValidateInput 
ON Sport 
FOR INSERT
AS
DELETE
FROM Sport
WHERE date_timing >= dateadd(MINUTE, 1,getdate());

什么是你正在使用的dbms,所以我可以提供正确的syxtax? 此示例适用于MS-SQL Server