可以在MySQL表中设置最大行数吗?

时间:2009-01-17 12:47:48

标签: php mysql

我对MySQL中的表有疑问。

我目前正在创建一个网站,我可以在其中下载文件供人们下载。现在我想在MySQL中创建一个存储最新下载的表,比如有人下载file1.zip然后它会在表格中添加一行文件名和日期,这样我就可以在首页上显示“最近下载的文件“或类似的东西。

因为我只需要显示5-10个项目,所以我不需要在表格中存储更多内容。 所以我想知道的是,是否可以设置表中可以有多少行的最大限制。就像它设置为10并且表中有10个条目一样,下次它尝试添加一个时它会自动删除最旧的一个,所以表中总是只有10行。

4 个答案:

答案 0 :(得分:3)

查看triggers以自动删除旧行。

答案 1 :(得分:1)

这可以通过使用触发器(需要MySQL 5)或设置cron作业或类似的东西来解决,它会定期检查表中的行数。

答案 2 :(得分:0)

我认为你不能设置MySQL自动执行它(虽然我的MySQL不完全是guru级别,所以我可能在那里错了)所以我认为你可能需要做的是创建一个INSERT触发器来DELETE在执行INSERT之前最早的行,或编写应用程序以使其始终在INSERT之前运行DELETE。

答案 3 :(得分:0)

为表提供一个时间戳列,不要插入新行,用最旧的时间戳替换行。