Foros del Web » Programación para mayores de 30 ;) » .NET »

Una Duda Ado .NET

Estas en el tema de Una Duda Ado .NET en el foro de .NET en Foros del Web. Buenas Noches. Verán, esta es mi duda, cuando inserto una nueva fila en mi Dataset y actualizo, por ejemplo un datagrid con ese nuevo data ...
  #1 (permalink)  
Antiguo 05/04/2004, 16:36
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Una Duda Ado .NET

Buenas Noches.

Verán, esta es mi duda, cuando inserto una nueva fila en mi Dataset y actualizo, por ejemplo un datagrid con ese nuevo data set, el campo que es autonumérico me lo muestra como null.

¿Como puedo hacer, que al insertar una nueva fila en el DataSet, los campos que sean autonúmericos me los autoincremente tb?

Este es el codigo q tengo ahora. (RESUMIDO)

Dim NR = new datarow
NR = DS.tables("dtaulas").newrow
NR("nombre") = txtnombre.text
NR("Aforo") = txtaforo.text
DS.row.add(nr)

dg.datasource=DS

Y me muestra los nuevos datos, pero el id, que es autonumerico me lo muestra como null, sinembargo, si depsues ejecuto el commandbuilder y cierro la aplicacion y vuelvo a cargar el DS, entonces ya me muestra el autonumérico, ¿Como puedo hacer que me lo muestre sin tener que recargar los datos del DS con mi BD?
__________________
Charlie.
  #2 (permalink)  
Antiguo 06/04/2004, 08:46
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
cierro la aplicacion y vuelvo a cargar el DS, entonces ya me muestra el autonumérico
Lo que pasa es que estas trabajando con datos desconectados y es por eso que hasta que ejecutas el commandbuilder y vuelves a cargar la aplicación el Dataset se vuelve a cargar tambien con los nuevos valores..

Si quieres ver los cambios inmediatos puedes usar el datareader. (ambiente conectado)

Saludos
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 06/04/2004, 13:09
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Ya rootK, pero, tb puedo actualizar el DS, sin necesidad de actualizar la BD. Cuando hago eso, y vuelvo a actualizar el DataSource de mi DataGrid, me aparecen los nuevos datos almacenados, pero el campo id me aparece como null, me imagino que habrá alguna forma de que al actualizar un DS, en su estructura interna ya sepa que tiene que añadir un id+1 al campo que es autonumérico.

Lo que pasa es que no se como hacerlo, ¿Me he explicado?
__________________
Charlie.
  #4 (permalink)  
Antiguo 06/04/2004, 14:05
 
Fecha de Ingreso: agosto-2003
Mensajes: 448
Antigüedad: 20 años, 8 meses
Puntos: 1
No sé cual gestor de base de datos estas usando, pero en SQL Server existe la función IDENT_CURRENT() que te devuelve el ultimo valor asignado a un campo autonumérico. Por tanto, podes ejecutar 1ro : SELECT IDENT_CURRENT('tabla') para obtener el ultimo valor asignado y luego vos mismo le vas sumando 1 para mostrar a tu datagrid.

Si estas usando otro gestor de base de datos, es cuestión de averiguar la forma de obtener el ultimo valor de un campo autonumérico.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:44.