Agregar clave consecuntiva al presionar un botón

Vuelvo a solicitar tu ayuda :)
Lo que pasa que necesito crear un botón en un formulario el cual al presionar me mande a un nuevo formulario donde llenara una caja de texto con con el numero consecutivo (en mi BD tengo el campo que se llama clave ese campo lo tengo como llave primaria) es decir si el ultimo registro de mi BD es 1010, a la hora de presionar el botón que me mandará al siguiente formulario, llenaría la caja de texto con el 1011.

1 respuesta

Respuesta
1
Lo más sencillo para esto es que tu campo clave lo declares como Identity y así cada que insertas un registro este automáticamente se pondrá con el valor inmediato superior (claro este valor lo puedes cambiar a que se aumente de 2 en 2 o de 3 en tres pero por default ylo que generalmente todos usamos es que aumento uno). Así cuando hagas tu consulta este campo no lo tienes que agregar en tu insert automáticamente se agrega (que supongo vas hacer uno).
Por ejemplo tu tabla tiene 3 campos el primero llave primaria y ademas identity los otros dos
tu consulta de insert quedaría así:
inster into tabla1 values(campo1,campo2)
En caso que no puedas hacer esto por que tu no puedas modificar tu campo a identity tendrás que hacer una consulta así:
select max(clave) + 1 as Clave from tabla
esto te dara la clave mayor en tu tabla y le suma uno.
Si te surge alguna duda me escribes
Hola de nuevo!
No me quedo muy claro lo que me explicas; Por que no se donde poner lo que me dices,
Identity, ¿esa propiedad se la tengo que cambiar en el diseño de mi tabla de SQL server?
Y lo del inster into tabla1 values(campo1,campo2)
tambien lo de select max(clave) + 1 as Clave from tabla en que parte de mi codigo lo debo poner? seria en el boton de insertar?
Disculpa por no comprender :(
Espero tu respuesta
Un saludo...
Hay dos opciones
1.- Cambiar esa propiedad en el diseño de tu tabla. En el Sql studio management en el diseño de tu tabla te posisionas en la columna clave luego en la parte de abajo en las propiedades de la columna va estar esa propiedad "Identity Specification" ahí le pones que si.
La ventaja del identity es que es automático y no tiens por que preocuparte por asignarle un valor cada que insertes un nuevo registro.
2.- Si no logras poner el campo clave como identity(en caso de que vayas a insertar registros) tendrás que indicar el valor de la columna cada que insertes un registro.
Para obtener la clave siguiente usas esta consulta:
Select max(Clave)+1 As Clave from tabla
puedes usar tambien lo que dice aqui
http://technet.microsoft.com/es-es/library/ms187342.aspx
Para obtener la clave mayor más uno y utilizarlo en el textbox de tu form.
Gracias por tu ayuda, ahora si me quedo muy claro lo que me explicas :)
Ya lo puse en practica y si me salio :) gracias nuevamente por todo..
Te mando un saludo. Fer..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas