Limitar el No. De registros de una tabla

Muchas gracias por la gran ayuda que nos dan a los novatos en esta página.
Tengo el siguiente dilema, quiero ver la posibilidad o la manera de limitar a cierto numero de registros cualquier tabla, he leído un poco y no me gustaría que fuera con Sql o a través de una consulta ya que lo quiero aplicar a tablas ya hechas y asignadas a formularios.
O si alguien tiene alguna idea de como hacer un demo de una aplicación hecha en access se lo agradeceré muchísimo.

1 respuesta

Respuesta
1
Creo que no se puede limitar el nº de registros en toda la BD.
Lo que podrías hacer, si introduces registros desde un formulario, es ponerle un tope. Es decir antes de insertar ponerle un if con la condición de que RecordCount sea <= al nº de registros que quieras.
En la página:
http://angelessebas.es/
En el apartado formularios, supuesto: Formulario para insertar datos en una tabla
Tienes varios ejemplos que como hacer un formulario para insertar datos.
Supongamos que eliges la 1ª solución, la de insertar por medio de ejecutar una consulta sql.
En tú caso, en el código del botón, ¿antes? De ejecutar la consulta tendrías que comprobar el nº de registros que tiene la tabla Pedidos, para ello tendremos que crear un recordset sobre esa tabla, luego contar los registros y si son menos de los que quieres dejar que se inserte el nuevo registro, sino lanzar un mensaje de que no se admiten más registros. Sería:
' Declaramos las variables
Dim db as database
Dim rs as recordset
' Activamos la BD en la que estamos
Set db=Currentdb
' Creamos el recordset sobre la tabla pedidos
Set rs=db.OpenRecordset("Pedidos")
' Vamos al último registro del recordset (el recordcount cuenta los registros hasta el nº de registro en el que está, como el recordset por defecto , cuando se abre siempre está en el 1er registro, si no le obligamos a que vaya al último, el RecordCount siempre son devolvería 1)
rs.MoveLast
'Ahora hacemos la comparación (supongo que el nº máximo de registros que quieres es 50)
If rs.RecordCount<50 then
'Ejecutas la consulta de anexión de datos
DoCmd.RunSql "Insert Into..............
else
' si no es <50 lanzas el mensaje
MsgBos "Máximo de registros admitido, no se pueden insertar más"
End If

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas