2010-05-29 70 views
1

是否有無論如何我可以限制在一個表中允許的行數量說40,然後當41st添加時,該表刪除第一個?sql從開始刪除

+0

您正在使用哪個數據庫? (Oracle,MySQL,SQL Server,...) – Andomar 2010-05-29 15:00:18

+0

我正在使用MYSQL – sark9012 2010-05-29 15:02:17

回答

1
CREATE TABLE animals (
id MEDIUMINT NOT NULL AUTO_INCREMENT, 
name CHAR(30) NOT NULL, 
PRIMARY KEY (id) 
); 

-- if this is 41st record, ... 
-- the statement below will delete the id with 1, and so forth 
insert into animals(name) values('wolverine'); 
delete from animals where id <= LAST_INSERT_ID() - 40; 
2

是的,你可以用觸發器做到這一點。您使用的是什麼RDMS?

+0

正在使用MYSQL。 – sark9012 2010-05-29 15:03:13