Como Implementar UPDATE

También podría gustarte

Está en la página 1de 10

Como implementar UPDATE() y

SUM() ?
Estas en el tema de Como implementar UPDATE() y SUM() ? en el foro de .NET en Foros del
Web. Amigos una vez ms los vengo a molestar con mis preguntas, tengo una tabla llamada
detalle_factura en esta hay tres campos: Cita: ----------------------------------------------
------------------------------ |**cantidad_producto**|**valor_producto**|**total_ producto**
...
Avisos Google
#1 (permalink)
05/07/2010, 11:10
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Como implementar UPDATE() y SUM() ?

Amigos una vez ms los vengo a molestar con mis preguntas, tengo una tabla llamada detalle_factura en esta
hay tres campos:
Cita:
----------------------------------------------------------------------------
|**cantidad_producto**|**valor_producto**|**total_ producto**
----------------------------------------------------------------------------
necesito primero multiplicar la cantidad de productos por el precio, lo que he hecho es que saco del campo
producto el precio y la cantidad, multiplico estos dos y por ultimo pienso actualizar el campo total_producto
con el resultado de la multiplicacin.

El primer problema es que no se como usar UPDATE en visual basic y por ultimo tendr que sumar toda la
columna total_producto.
El segundo porblema es que no se como implementar SUM() no se si deba hacer
Cita:
"select sum(total_producto)"
Ejemplo:
Cita:
----------------------------------------------------------------------------
|**cantidad_producto**|**valor_producto**|**total_ producto**
----------------------------------------------------------------------------
|***********2**********|*******1500*******|******3 000*******
----------------------------------------------------------------------------
Agradezco como siempre su ayuda

Nota: se que para actualizar es UPDATE tabla SET campo=****** done **** es el valor que contendr.
Avisos Google
Flotacion De Minerales
Compra flotacin de minerales? Lnea completa de
soluciones! es.beneficiationchina.com
#2 (permalink)
05/07/2010, 11:40
Ka0stj

Fecha de Ingreso: febrero-2010
Ubicacin: Mxico
Mensajes: 738
Antigedad: 4 aos, 2 meses
Puntos: 37

Respuesta: Como implementar UPDATE() y SUM() ?

Hola easolano5

El update lo puedes hacer de la siguiente manera:
Cdigo vb:
Ver original
1. UPDATE " tabla " SET "campo_a_modificar " = "nuevo_valor " WHERE " &
condicion


El sum de la siguiente manera para evitar errores:
Cdigo vb:
Ver original
1. SELECT ISNULL(SUM(" columna"),0) FROM " tabla " WHERE " & condicion


Ahora bien nose si donde dices que no sabes como hacerlo en vb te refieres a la ejecucin de estos comandos
o si tu problema esta en la creacin de dichos comandos (querys).

De ser la primera opcin te agrego esto.

Para el Update:
Cdigo vb:
Ver original
1. Public Sub EjecutarQuery(ByVal sql As String, ByVal objConn As
SqlConnection)
2.
3. Dim cmd As System.Data.SqlClient.SqlCommand
4. cmd = New System.Data.SqlClient.SqlCommand()
5. cmd.Connection = objConn
6. cmd.CommandText = sql
7. cmd.ExecuteNonQuery()
8.
9. End Sub


Para el Sum:
Cdigo vb:
Ver original
1. Public Function EjecutarEscalar(ByVal sql As String, ByVal objConn As
SqlConnection)
2.
3. Dim total As Double
4.
5. Dim cmd As System.Data.SqlClient.SqlCommand
6. cmd = New System.Data.SqlClient.SqlCommand()
7. cmd.Connection = objConn
8. cmd.CommandText = sql
9. total = cmd.ExecuteScalar
10.
11. Return total
12.
13. End Function


Pueden existir distintas formas pero yo utilizo las mencionadas anteriormente.

Espero y te sirvan, Saludos!
Avisos Google
Ingeniera Industrial
Conoce ms de nuestra carrera en nuestra Charla. Regstrate
Aqu! ue.edu.pe/IngenieraIndustrial
#3 (permalink)
05/07/2010, 11:47

atak

Fecha de Ingreso: julio-2005
Ubicacin: Huancayo
Mensajes: 490
Antigedad: 8 aos, 9 meses
Puntos: 5

Como implementar UPDATE() y SUM() ?

Hola,

puedes usar la siguiente sentencia :

Cdigo PHP:

UPDATE detalle_factura set total_ producto=cantidad_producto*valor_prod
ucto where ("CONDICION")
Saludos.
__________________
. .: El mejor Inicio :. .
#4 (permalink)
05/07/2010, 11:53
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Respuesta: Como implementar UPDATE() y SUM() ?

Gracias por responder probar ambas, y habia olvidado mencionar que estoy usando visual basic 2008 y
mysql, an as probar hasta que funcione.
#5 (permalink)
05/07/2010, 12:53
Ka0stj

Fecha de Ingreso: febrero-2010
Ubicacin: Mxico
Mensajes: 738
Antigedad: 4 aos, 2 meses
Puntos: 37

Respuesta: Como implementar UPDATE() y SUM() ?

Ok, ahora que mencionas que utilizas MySql tendras que cambiar algunas cosas de las que te puse, por
ejemplo:
Cdigo vb:
Ver original
1. 'SQL Server
2. objConn As SqlConnection
3. cmd = New System.Data.SqlClient.SqlCommand()
4. 'MySql
5. objConn As MySql.Data.MySqlClient.MySqlConnection
6. cmd = New MySql.Data.MySqlClient.MySqlCommand()


Esto porque la tanto la funcin como el mtodo que te puse son para Sql Server.
#6 (permalink)
05/07/2010, 14:23
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Respuesta: Como implementar UPDATE() y SUM() ?

Cita:
UPDATE " tabla " SET "campo_a_modificar " = "nuevo_valor " WHERE " & condicion
mira lo que hice:
Cita:
Dim insertar3 As New MySqlDataAdapter("UPDATE detalle_facturas SET total_producto='" & total &"'
WHERE nombre_producto_factura='" & NombreProd & "')", conexion)
Dim comando3 As New MySqlCommandBuilder(insertar3)
Dim midataset3 As New DataSet
Try
insertar3.Fill(midataset3, "detalle_facturas")
MsgBox("Los datos se actualizaron correctamente.", MsgBoxStyle.Information)
Catch ex As MySqlException
MsgBox("No se pudo realizar la actualizacin.", MsgBoxStyle.Critical)
MsgBox(ex.Message.ToString())
Finally
conexion.Dispose()
End Try
total es una variable que tiene la multiplicacin de cantidad de productos y el precio de ese producto, pero no
me hace la operacin.
Cita:
UPDATE detalle_factura set total_ producto=cantidad_producto*valor_producto where ("CONDICION")
Este lo implement pero tampoco funciona.

Cmo hago en este caso?

ltima edicin por easolano5; 05/07/2010 a las 14:28
#7 (permalink)
05/07/2010, 16:05
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Respuesta: Como implementar UPDATE() y SUM() ?

Probando si escribo esto en phpmyadmin
Cita:
update detalle_facturas set total_producto=cantidad_producto_factura*valor_pro ducto_factura where
id_detalle=1
hace la operacin exacta, en visual basic intento hacerlo igual y no me resulta.

Y si quiero hacer esto en visual basic tampoco funciona qu hago mal?
Cita:
update detalle_facturas set total_producto=cantidad_producto_factura*valor_pro ducto_factura where
id_detalle=(SELECT(Max(id_detalle)))
Como debo plantear la eso en visual basic.net
#8 (permalink)
05/07/2010, 20:26
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Respuesta: Como implementar UPDATE() y SUM() ?

Cita:
Dim actualiza As New MySqlCommand("UPDATE detalle_facturas SET
total_producto=ROUND(cantidad_producto_factura*val or_producto,2) WHERE
id_detalle=(SELECT(Max(id_detalle)))", conexion)

actualiza.Connection.Open()
actualiza.ExecuteNonQuery()
MsgBox("Los datos se actualizaron correctamente.", MsgBoxStyle.Information)
Hago eso y an no hay actualizacin a travs de visual basic
#9 (permalink)
05/07/2010, 21:07
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Respuesta: Como implementar UPDATE() y SUM() ?

Cita:
'****************************************
' ACTUALIZANDO DATOS AL DETALLE FACTURA
'****************************************

Dim actualizado As New MySqlCommand
Try
actualizado.Connection = conexion
actualizado.CommandText = ("UPDATE detalle_facturas SET
total_producto=cantidad_producto_factura*valor_pro ducto_factura WHERE
id_detalle=(SELECT(Max(id_detalle)))")
conexion.Open()
actualizado.ExecuteNonQuery()
MsgBox("El registro fue actualizado", MsgBoxStyle.Exclamation)
Catch ex As MySqlException
MsgBox("No se logr actualizar el registro", MsgBoxStyle.Critical)

'-----------------------------------------
End Try
Ya esta actualizando datos jeje funciona de maravilla luego vuelvo con noticias del SUM() voy a dormir
porque esto me dejo cansado pero aprendi mucho, maan regreso con noticias.
#10 (permalink)
05/07/2010, 22:06
Ka0stj

Fecha de Ingreso: febrero-2010
Ubicacin: Mxico
Mensajes: 738
Antigedad: 4 aos, 2 meses
Puntos: 37

Respuesta: Como implementar UPDATE() y SUM() ?

Hola easolano5

Practicamente llegaste a lo que te propuse la primera vez solo que como te comentaba que adaptaras los
comandos para MySql, dichas funciones funcionan a la perfeccin porque yo actualmente las estoy
utilizando.

Saludos!
#11 (permalink)
06/07/2010, 05:54
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Respuesta: Como implementar UPDATE() y SUM() ?

Si hombre gracias ahora tengo otra dificultad, resulta que tengo otra tabla la anterior se llama detalle_factura
Cita:
--------------------------------------------------------------------------
|**cantidad_producto**|**valor_producto**|**total_ producto**
--------------------------------------------------------------------------
|***********2**********|*******1500*******|******3 000*******
--------------------------------------------------------------------------
y tengo otra llamada encabezado_factura en la cual hay un campo llamado total_factura las dos tablas tienen
un campo registro en comun, el numero_factura que es la relacion entre estas dos.

si yo hago esto:
Cita:
SELECT sum( total_producto )
FROM `detalle_facturas`
WHERE numero_factura =32
me arroja el valor exacto suma la columna total_producto donde el numero de factura es igual a la condicion
que le coloque.

Ahora quiero saber dos cosas:

1. Como podria yo asignarle a un textbox o a una variable que est en un modulo ese valor?

2. como actualizo el campo total_Factura de la tabla encabezado_factura con el valor del sum(
total_producto )
FROM `detalle_facturas`
WHERE numero_factura =condicion

3. Si creo otro campo en detalle_factura que conteng la suma tota de los productos donde el numero de
factura sea = condicion

podria ejectuar esto?
Cita:
UPDATE detalle_facturas SET total_productos_factura = ( SELECT (
sum( total_producto )
FROM detalle_facturas )
)
WHERE numero_factura = (
SELECT (
Max( numero_factura ) )
)

o simplemente como le asigno a una variable esta consulta:
Cita:
SELECT sum( total_producto )
FROM `detalle_facturas`
WHERE numero_factura = (
SELECT (
Max( numero_factura ) )
)
Gracias

ltima edicin por easolano5; 06/07/2010 a las 07:16
#12 (permalink)
06/07/2010, 08:44
Ka0stj

Fecha de Ingreso: febrero-2010
Ubicacin: Mxico
Mensajes: 738
Antigedad: 4 aos, 2 meses
Puntos: 37

Respuesta: Como implementar UPDATE() y SUM() ?

Hola easolano5

1. Como podria yo asignarle a un textbox o a una variable que est en un modulo ese valor?

Bueno en este caso primeramente puedes crear un modulo, dentro del modulo declaras la variable tipo public
que quieres que guarde dicho resultado de la consulta. Por ejemplo si se llama MiVariable
Cdigo vb:
Ver original
1. MiVariable = EjecutarEscalar(Instruccion_SQL, objConn)


Donde la funcin EjecutarEscalar ya la tienes.
Para el TextBox pues seria lo mismo:
Cdigo vb:
Ver original
1. MiTextBox.Text = MiVariable


2. como actualizo el campo total_Factura de la tabla encabezado_factura con el valor del sum( total_producto
)

Aqu primero asignas a una variable el resultado del sum como lo hice en el punto 1, despus en tu
Instruccion SQL del UPDATE haces esto:
Cdigo vb:
Ver original
1. actualizado.CommandText = ("UPDATE detalle_facturas SET total_producto=
" & MiVariable & " *valor_pro ducto_factura WHERE
id_detalle=(SELECT(Max(id_detalle)))")


Y en el punto 3 me inclino mas por la segunda opcin de asignarle el valor a una variable.
#13 (permalink)
06/07/2010, 17:29
easolano5

Fecha de Ingreso: abril-2010
Ubicacin: Colombia - Barranquilla
Mensajes: 66
Antigedad: 4 aos, 1 mes
Puntos: 0

Solucionado

Hola gracias mira hice esto para extraer en una variable el dato qeu queria:
Cita:
Dim consulta2 As New MySqlCommand
Try
consulta2.Connection = conexion
consulta2.CommandText = ("select cantidad_producto from productos where nombre_producto='" &
NombreProd & "'")
conexion.Open()
pCantidad = consulta2.ExecuteScalar()
MsgBox("ok al extraer" & pCantidad, MsgBoxStyle.Exclamation)
Catch ex As MySqlException
MsgBox("No extrajo", MsgBoxStyle.Critical)

También podría gustarte