Visual Basic.NET - reto---ayuda con UpdateCommand de un Adaptador

 
Vista:

reto---ayuda con UpdateCommand de un Adaptador

Publicado por Jonathan_UDB (3 intervenciones) el 05/08/2006 09:57:33
hola amigos... tengo un problemita con el comando update generado a partir de un adaptador de datos... (SQLDataAdapter)...kisisera saber si me pueden ayudar con el codigo.-.

la base de datos es la Northwind de sqlserver la tabla Categories

---------------------------
asumiendo ke la conexion (conexion) ya esta activa
-------
Private Sub actualizar()

'Se declara el Adaptador
Dim MiAdapter As SqlDataAdapter = New SqlDataAdapter

'Declare 2 Comandos necesarios para cada transacción, seleccionar y update
Dim SqlSelectCommand1 As SqlCommand = New SqlCommand
Dim SqlUpdateCommand1 As SqlCommand = New SqlCommand

'Pego cada comando a la transaccion que hará en el Adaptador
MiAdapter.SelectCommand = SqlSelectCommand1
MiAdapter.UpdateCommand = SqlUpdateCommand1

'Configuro el SqlSelectCommand1 para que haga el SELECT
SqlSelectCommand1.CommandText = "SELECT CategoryID, CategoryName, Description " & _
"FROM Categories"

'Le pego la conexión
SqlSelectCommand1.Connection = conexion

'Crea el mapeo de la Tabla para que el Adaptador sepa que
'columna es cual en la tabla
MiAdapter.TableMappings.AddRange(New DataTableMapping() _
{New DataTableMapping("Table", "Categories", _
New DataColumnMapping() _
{New DataColumnMapping("CategoryID", "CategoryID"), _
New DataColumnMapping("CategoryName", "CategoryName"), _
New DataColumnMapping("Description", "Description")})})

'Configuro el SqlUpdateCommand1 para actualizar los valores
'Igual que el anterior la sentencia Select que devuelve el registro actualizado
SqlUpdateCommand1.CommandText = "UPDATE Categories " & _
"SET CategoryID = @CategoryID, CategoryName = @CategoryName, Description"&_
" = @Description " & _
"WHERE (CategoryID = @Original_CategoryID); " & _
"SELECT CategoryID, CategoryName, Description " & _
"FROM Categories " & _
"WHERE (CategoryID = @CategoryID)"

'Pego la Conexión
SqlUpdateCommand1.Connection = conexion

'Fijense que además de los 3 parametros creo uno más que tenía el ID anterios
SqlUpdateCommand1.Parameters.Add(New SqlParameter("@CategoryID"&_, SqlDbType.Int, 4, "CategoryID"))
SqlUpdateCommand1.Parameters.Add(New SqlParameter("@CategoryName", SqlDbType.NVarChar, 30, "CategoryName"))
SqlUpdateCommand1.Parameters.Add(New SqlParameter("@Description", SqlDbType.NText, 16, "Description"))
'Este parámetro trae el valor que tenía originalmente el registro
SqlUpdateCommand1.Parameters.Add(New SqlParameter("@Original_CategoryID"&_
", SqlDbType.Int, 4, ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte),"&_ "CategoryID", DataRowVersion.Original, Nothing))"

Dim MiDataSet As New DataSet
MiAdapter.Fill(MiDataSet, "Categories")

'Y para actualizar
MiAdapter.Update(MiDataSet)

End Sub
----------------------------------------------------------------------------------------------------

el procedimiento no me genera errores...el problerma es ke no me actualiza los datos...es un procedimiento ke lo llamo a otra parte del formulario, al botom actualizar para ser mas exactos...esta porcion de codigo es la ke me interesa resolver, si pudiesen ayudarme se los agradeceria con muchisimo gusto....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:reto---ayuda con UpdateCommand de un Adaptador

Publicado por Fernando (15 intervenciones) el 08/08/2006 13:48:43
Hola,
en qué momento ejecutás el SqlUpdateCommand1 ?

así:
SqlUpdateCommand1.ExecuteNonQuery

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:reto---ayuda con UpdateCommand de un Adaptador

Publicado por jonathan (3 intervenciones) el 08/08/2006 15:40:57
MiAdapter.Update(MiDataSet)
en el evento click del boton designado para actualizar
--gracias por interesarte amigo mio--
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar