Act. datos en base de datos

05/10/2006 - 12:54 por angelo | Informe spam
Hola, estoy haciendo una aplicación en Visual Basic 2005.

Cuando el ejecuto el comando Update me da un error:

Update requiere que UpdateCommand sea valido

Cuando genero el adaptador de datos me dice:

Instrucción SELECT generada

Instrucción INSET generada

Pero no me dice nada del Update.


If Me.DataSet1.HasChanges() Then

ValMess = MessageBox.Show("Desea actualizar los Datos ? ", "Actualizar",
MessageBoxButtons.OKCancel, MessageBoxIcon.Information)

If ValMess = Windows.Forms.DialogResult.OK Then

Try

Me.DataFam.Update(DataSet1)

MessageBox.Show("Familias Actualizada")

Catch ex As System.InvalidOperationException

MsgBox(ex.ToString)

MessageBox.Show("No se actualizan los datos")

End Try

End If

End If



Muchas gracias

Preguntas similare

Leer las respuestas

#6 angelo
09/10/2006 - 17:57 | Informe spam
Muchas gracias ...haber si algún dia puedo ayudarte yo ..jejeje.

Saludos

"Luis Miguel Blanco" escribió
en el mensaje news:
Hola Angelo

Para realizar una inserción en un dataset puedes utilizar el método


NewRow()
de la tabla sobre la que vayas a añadir el registro. Esto te devuelte un
objeto datarow con la estructura de la fila adaptada a la tabla, por lo


que
sólo tienes que ir añadiendo los valores a los campos del datarow, y por
último, añades dicho objeto a la colección rows del dataset.

En cuanto al borrado de un registro en un dataset, puedes utilizar el


método
Delete() de la colección rows correspondiente a la tabla del dataset sobre


la
que necesitas hacer el borrado, teniendo en cuenta que debes pasar como
parámetro la posición de fila a borrar.

Te adjunto un ejemplo de ambos casos

'//////////////////////////////////////////////////////
' añadir registro
Dim drFila As DataRow = oDataSet.Tables("NombreTabla").NewRow()
drFila("Campo1") = "valor campo"
drFila("Campo2") = "valor campo"
oDataSet.Tables("NombreTabla").Rows.Add(drFila)

' borrar registro
oDataSet.Tables("NombreTabla").Rows(nPosicionFila).Delete()
'//////////////////////////////////////////////////////

Espero que el ejemplo te sirva de ayuda.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"angelo" wrote:

> Muchas gracias por la aclaración.
> Si quiereo hacer un Inser y un Delete, como deberia hacerlo ?
>
> Gracias
>
>
> "Luis Miguel Blanco"


escribió
> en el mensaje news:
> > Hola Angelo
> >
> > Cuando creas un dataadapter para cargar datos desde una base de datos


en
> un
> > dataset, las propiedades correspondientes a los comandos de inserción,
> > borrado y modificación (InsertCommand, DeleteCommand, etc.) no tienen
> valor.
> >
> > Si sólo vas a usar el dataadapter para volcar datos a un dataset, no


debes
> > preocuparte, ya que no necesitas que dichas propiedades tengan el


objeto
> > command correspondiente, pero si vas a hacer algún tipo de operación
> > adicional con el adaptador de datos, como por ejemplo, actualizar de
> vuelta
> > los registros modificados en el dataset sobre la base de datos física,


en
> ese
> > caso necesitas que la propiedad UpdateCommand contenga el


correspondiente
> > objeto command para que el dataadapter "sepa" cómo tiene que ejecutar


las
> > actualizaciones.
> >
> > Para no tener que estar creando manualmente este conjunto de comandos


es
> > para lo que se proporciona el objeto CommandBuilder, el cual genera
> > automáticamente para el adaptador de datos los mencionados comandos,


de
> > manera que se facilita en este sentido dichas operaciones de
> actualización.
> >
> > Espero que estas indicaciones te hayan sido de utilidad.
> >
> > Un saludo
> > Luis Miguel Blanco
> > http://www.dotnetmania.com
> >
> >
> > "angelo" wrote:
> >
> > > Muchas gracias ..esto funciona..
> > >
> > > Pero por que no funciona de la otra manera ?
> > >
> > > Muchas gracias de nuevo.
> > >
> > >
> > >
>
>
>
Respuesta Responder a este mensaje
#7 Luis Miguel Blanco
10/10/2006 - 08:41 | Informe spam
Hola Angelo

No hay de qué, y estoy seguro de que podrás prestarnos tu ayuda en algún
momento. Para eso estamos todos aquí 8-))))

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"angelo" wrote:

Muchas gracias ...haber si algún dia puedo ayudarte yo ..jejeje.

Saludos

"Luis Miguel Blanco" escribió
en el mensaje news:
> Hola Angelo
>
> Para realizar una inserción en un dataset puedes utilizar el método
NewRow()
> de la tabla sobre la que vayas a añadir el registro. Esto te devuelte un
> objeto datarow con la estructura de la fila adaptada a la tabla, por lo
que
> sólo tienes que ir añadiendo los valores a los campos del datarow, y por
> último, añades dicho objeto a la colección rows del dataset.
>
> En cuanto al borrado de un registro en un dataset, puedes utilizar el
método
> Delete() de la colección rows correspondiente a la tabla del dataset sobre
la
> que necesitas hacer el borrado, teniendo en cuenta que debes pasar como
> parámetro la posición de fila a borrar.
>
> Te adjunto un ejemplo de ambos casos
>
> '//////////////////////////////////////////////////////
> ' añadir registro
> Dim drFila As DataRow = oDataSet.Tables("NombreTabla").NewRow()
> drFila("Campo1") = "valor campo"
> drFila("Campo2") = "valor campo"
> oDataSet.Tables("NombreTabla").Rows.Add(drFila)
>
> ' borrar registro
> oDataSet.Tables("NombreTabla").Rows(nPosicionFila).Delete()
> '//////////////////////////////////////////////////////
>
> Espero que el ejemplo te sirva de ayuda.
>
> Un saludo
> Luis Miguel Blanco
> http://www.dotnetmania.com
>
>
> "angelo" wrote:
>
> > Muchas gracias por la aclaración.
> > Si quiereo hacer un Inser y un Delete, como deberia hacerlo ?
> >
> > Gracias
> >
> >
> > "Luis Miguel Blanco"
escribió
> > en el mensaje news:
> > > Hola Angelo
> > >
> > > Cuando creas un dataadapter para cargar datos desde una base de datos
en
> > un
> > > dataset, las propiedades correspondientes a los comandos de inserción,
> > > borrado y modificación (InsertCommand, DeleteCommand, etc.) no tienen
> > valor.
> > >
> > > Si sólo vas a usar el dataadapter para volcar datos a un dataset, no
debes
> > > preocuparte, ya que no necesitas que dichas propiedades tengan el
objeto
> > > command correspondiente, pero si vas a hacer algún tipo de operación
> > > adicional con el adaptador de datos, como por ejemplo, actualizar de
> > vuelta
> > > los registros modificados en el dataset sobre la base de datos física,
en
> > ese
> > > caso necesitas que la propiedad UpdateCommand contenga el
correspondiente
> > > objeto command para que el dataadapter "sepa" cómo tiene que ejecutar
las
> > > actualizaciones.
> > >
> > > Para no tener que estar creando manualmente este conjunto de comandos
es
> > > para lo que se proporciona el objeto CommandBuilder, el cual genera
> > > automáticamente para el adaptador de datos los mencionados comandos,
de
> > > manera que se facilita en este sentido dichas operaciones de
> > actualización.
> > >
> > > Espero que estas indicaciones te hayan sido de utilidad.
> > >
> > > Un saludo
> > > Luis Miguel Blanco
> > > http://www.dotnetmania.com
> > >
> > >
> > > "angelo" wrote:
> > >
> > > > Muchas gracias ..esto funciona..
> > > >
> > > > Pero por que no funciona de la otra manera ?
> > > >
> > > > Muchas gracias de nuevo.
> > > >
> > > >
> > > >
> >
> >
> >



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida