Update sql

Bueno lo que quiero saber es como se puede hacer un update con SQL en Access, e probado con un solo registro y si lo actualiza, pero yo necesito hacer el udpate en varios registro pero en un mismo campo, y todos hacerlos en un solo query

2 respuestas

Respuesta
1
No tiene mayor complicación:
UPDATE Productos SET
Productos.[Precio/Unidad] = 200,
Productos.[Precio] = 200,
Productos.[Total] = 100
WHERE (("idProducto"=1));
Detrás del where añadimos las condiciones que afectaran a todos lor registros que deseemos actualizar.
¿Bueno dentro del paréntesis puedo colocar una condición lógica?
Y lo que necesito hace es esto
update zonas set municipio="MN1" where municipio= "Acatenango"
update zonas set municipio="MN10" where municipio= "Cabañas"
Asignarle un código a cada uno de los municipios, pero esos municipios están en una tabla
Gracias
Puedes updatar una columna con el valor de otra columna de otra tabla, haciendo referencia a su primary key.
Lo siento pero no entiendo lo que quieres hacer.
Explícate más extensamente sobre lo que tienes y sobre lo que pretendes tener sino no me hago una idea.
Lo que pasa es que tengo esa información en una tabla y necesito reemplazar los nombres de municipios por códigos que están en otra tabla, pero lo que pasa que son como 49000 registros y de esos 490000 hay como 1000 registros que pertenecen a un mismo nombre de municipio y son 331 nombre de municipios que necesito reemplazar por códigos.
Con esta sentencia updatarías los 49000, si necesitas updatar los que por ejemplo empiezan por Aco deberías añadir ese requisito al final con un where y un like (% es un comodín que significa cualquier cosa, lo puedes poner delante, detrás en medio, donde sea y las veces que quieras):
Update zonas a
set a.municipio = (select b.codigo from tabla2 b where a.municipio = b.municipio)
where a.municio like "Aco%"
Respuesta
1
Para hacer eso que ices en un solo qry.. tienes que emplear VB
Puedes escribir un proc
Que lea la tabla y actualize los campos
Más o menos así:
private sub actualiza()
db=currentDB()
rst=db.openrecordset("Municipios",dbOpenTable)
rst.movefirst
do while not rst.eof
rst.edit
IF municipios!municipio="Acatenango" then
municipios!municipio="MN1"
rst.update
endif
rst.movenext
loop
end sub
Este proc. Te daría el mismo resultado... y si quisieras podrías aumentar más bucles IF para los demás valores de municipio.
Ojala te sirva

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas