SoloCodigo
Bases de Datos => MS Access => Mensaje iniciado por: az8 en Viernes 5 de Marzo de 2010, 17:13
-
hola... tengo un problema como puedo enumerar mis registros de una consulta, es decir poner un numero progresivo a mis registros
por ejemplo tengo una tabla A en la cual tengo los siguientes registros
Tabla A
ID NOMBRE
A001 PEDRO
A034 JUAN
A008 LILIA
A003 LUIS
A005 NORMA
Y POR DECIR YO KIERO KE EN UNA CONSULTA KE ME ARROJE LO SIGUIENTE
Num Prog ID NOMBRE
1 A001 PEDRO
2 A034 JUAN
3 A008 LILIA
4 A003 LUIS
5 A005 NORMA
espero halla sido lo mas claro posible...... gracias
-
Yo la solución que he visto por ahí es hacer una consulta COUNT a la tabla, recogerla aumentarlo +1 e introducirlo como otro campo de la tabla.
-
no te entendi nada podrias ser mas explicito.. por favor.. de antemano gracias por tomarte la molestia en contestar
-
Veamos a ver, deberías tener un campo para identificar el registro, entonces lo que puedes hacer es una consulta SQL con la sentencia Count de todos los registros de la tabla, entonces te devolverá el número de registros que tiene la tabla por lo que el nuevo registro a añadir debe ser el resultado del Count + 1.
La idea es contar los registros que hay en la tabla y aumentar en 1 para el nuevo registro, igualmente yo creo que usando una clave primaria debería poderse, pero por ahora no eso no te lo puedo explicar.
-
seria mucho pedir si pusieras un ejemplo de la sintaxis?, lo tienes ke hacer desde la consulta en access o desde visual basic
-
ok, digamos que la sentencia que tendrías que meter en el Oledbcommand sería:
Select Count(*) from Nombre_Tabla
-
Yo es que trabajo en c#, supongo que trabajaras con el Oledb, así que usas esa sentencia y lo que te devuelva lo pasas a una variable de tipo int
int x = int.parse(tabla[indice_de campo_clave]));
x++
y luego insertas x como el campo clave.