如何在SQL Server表中设置最大行数?

时间:2012-03-03 18:54:20

标签: c# .net database

我需要在 SQL Server Compact 3.5数据库表中设置最大行数:数据库由一些表组成,每个表应该有不同的最大行数。

如果答案是肯定的,那么表格满了时的默认规则是什么?我可以设置自定义规则(例如,我会删除最少ID的行,其中ID是一列)?

2 个答案:

答案 0 :(得分:1)

恕我直言答案是否定的 - SQL Server没有您所要求的配置选项。

使用支持触发器的SQL Server版本,您可以通过BEFORE INSERT触发器(每个表一个)实现您想要的...这将允许实现您需要的任何“表满”情况的规则......

由于SQL Server Compact不支持触发器,因此我没有看到实现您要求的方法......

答案 1 :(得分:1)

如果没有触发器,您可以拥有一个包含一列整数1到最大行#的表,然后在表中只允许最多行#定义一个具有UNIQUE约束和外部行的行号列键约束指向具有1到最大行#的表。您需要处理将下一行编号保持在正确的值,并且一旦到达最大行#,您将需要编写代码来处理外键约束异常。显然,这是一个非常大的黑客,并且维护起来不会很好。