[pyar] COMO HACER UN UPDATE DESDE PYQT5

Roberto Matarrita rmatarria en gmail.com
Jue Ago 24 01:53:28 ART 2017


Gracias Leonel, excelente lo de los formatos.

Roberto

El 23 de agosto de 2017, 15:59, Leonel . <leonelmalon en gmail.com> escribió:

> Perfecto! Mira esta página [0] que te explica bien.
>
> [0] pyformat.info
>
> El 23 ago. 2017 14:01, "Roberto Matarrita" <rmatarria en gmail.com> escribió:
>
>> Gracias Leonel. Me dieron las tres de la madrugada haciendo pruebas de
>> todo tipo ayer y alfin lo logré, ya aprendí. La forma en que lo describes
>> es como me funcionó, especialmente el segundo caso. Voy a probar también la
>> otra forma que dices a ver que resultados da y te aviso
>>
>> Gracias
>> Roberto
>> Costa Rica
>>
>> El 23/8/2017 5:36 a. m., "Leonel ." <leonelmalon en gmail.com> escribió:
>>
>>> Hola, el problema lo tenés en esta línea:
>>>
>>> objCursor.execute("UPDATE usuarios SET nombre = *nombrenuevo*, salario
>>> = *salarionuevo* WHERE identificacion = *iden*")
>>>
>>> Esos valores los tenés que formatear, algo así:
>>>
>>>
>>> objCursor.execute("UPDATE usuarios SET nombre = '*{nombrenuevo**}'*,
>>> salario = *{salarionuevo}* WHERE identificacion = *{iden**}*
>>> ".formato(nombrenuevo=nombrenuevo, salarionuevo=salarionuevo,
>>> identidad=iden))
>>>
>>> O algo así,
>>>
>>>
>>> objCursor.execute("UPDATE usuarios SET nombre = *'%s'*, salario = *%s* WHERE
>>> identificacion = *%s*" % (nombrenuevo, salarionuevo, iden))
>>>
>>> no sé cuál se recomienda en estos casos, también puede haber un
>>> formateado por parte de pyodbc con '?' y pasando los valores como
>>> argumentos en la función execute del cursor, pero no estoy seguro.
>>>
>>> Alguien que me corrija por las dudas..
>>> PD: no te olvides las comillas simples en nombrenuevo.
>>>
>>> Saludos
>>>
>>>
>>>
>>> El 22 ago. 2017 21:42, "Roberto Matarrita" <rmatarria en gmail.com>
>>> escribió:
>>>
>>>> Este es el código que tengo. Parece que nombrenuevo, salario nuevo no
>>>> son aceptados por python de esa forma, incluso iden. Ya que el update se va
>>>> por el lado de error.
>>>> Acepto sugerencias.
>>>>
>>>>    def Modificar(identificacion,nombre):
>>>>         try:
>>>>             cadenaconexcion="host='localhost' dbname='municipal'
>>>> user='postgres' password='Administra8080'"
>>>>             obj=psycopg2.connect(cadenaconexcion)
>>>>             objCursor=obj.cursor()
>>>>
>>>>
>>>>             estado = self.db.open()
>>>>
>>>>             if estado == False:
>>>>                QMessageBox.warning(self, "Error",
>>>> self.db.lastError().text(), QMessageBox.Discard)
>>>>             else:
>>>>
>>>>               nombrenuevo = self.nombre.text()
>>>>               iden                = self.identifica.text()
>>>>               salarionuevo  = self.salario.text()
>>>>
>>>>               objCursor.execute("UPDATE usuarios SET nombre =
>>>> nombrenuevo, salario = salarionuevo WHERE identificacion = iden")
>>>>               obj.commit()
>>>>
>>>>         except :
>>>>             print ("Datos no Actualizados")
>>>>             print(self.nombre.text())
>>>>             obj.rollback()
>>>>             objCursor.close()
>>>>             obj.close()
>>>>
>>>> Roberto
>>>> Costa Rica.
>>>>
>>>> El 22 de agosto de 2017, 9:18, Eduardo Rizzolo <
>>>> fullpaint en pinturas-misioneras.com.ar> escribió:
>>>>
>>>>> *Hola sin los datos de la tabla es medio complicado orientarte, pero
>>>>> sintacticamente hay 2 cosas para ver*
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> * "UPDATE usuarios set nombrenuevo= nombre, salario=salarionuevo where
>>>>> identificacion = 5" El nombre del campo supongo es nombre. Y el nombre
>>>>> nuevo entre comillas simples... "UPDATE usuarios set nombre= 'nombrenuevo',
>>>>> salario=salarionuevo where identificacion = 5" Y supuestamente
>>>>> identificacion es el ID UNICO. Se supone q existe (el 5), porq es un
>>>>> UPDATE, sino tenes que hacer un INSERT... ...Y no podes repetir el ID
>>>>> UNICO. El ID UNICO puede aparte hacerse AUTOINCREMENT, se incrementa solo
>>>>> en cada INSERT. Para tomar ultimo ID UNICO, hay un comando SQL que te
>>>>> indica en una consulta cual fue el ULTIMO ID ASIGNADO. Algunas cosillas
>>>>> para tener en cuenta... Espero te sea util Edu On Tue, 22 Aug 2017 00:33:23
>>>>> -0600, Roberto Matarrita wrote*
>>>>> > Buenas noches. Tengo una forma con los campos identificacion,
>>>>> nombre, salario. Esta ingresa los datos correctamente.
>>>>> >
>>>>> > Pero si deseo actualizar el nombre o el salio no puedo hacerlo. He
>>>>> buscado documentación de como hacer un Update, desde PYQT5,
>>>>> > pero no la he podido encontrar.
>>>>> >
>>>>> > Si alguien me puede decir como hacer el update, se los agradeceria.
>>>>> >
>>>>> > objCursor.execute("UPDATE usuarios set nombrenuevo= nombre,
>>>>> salario=salarionuevo where identificacion = 5")
>>>>> > Parece que de esta forma no funciona.
>>>>> >
>>>>> > Mucho agradecería la ayuda.
>>>>> >
>>>>> > Roberto
>>>>> > Costa Rica.
>>>>>
>>>>>
>>>>> --
>>>>> Eduardo Rizzolo
>>>>> Eldorado, Misiones Argentina
>>>>> INF 0023
>>>>> Linux Counter 518438
>>>>> Correo principal:fullpaint en pinturas-misioneras.com.ar
>>>>> Correo Secundario:fullpaint en gmail.com
>>>>> skype:fullpaint1
>>>>> www.creacionistas.com -> Que lindo cuentito nos contaron!!
>>>>> http://video.google.es/videoplay?docid=5201456816857396330&hl=es
>>>>> www.puertosur.org
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>>>> Sitio web: http://www.python.org.ar/
>>>>>
>>>>> Para administrar la lista (o desuscribirse) entrar a
>>>>> http://listas.python.org.ar/listinfo/pyar
>>>>>
>>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>>> Argentina - http://www.usla.org.ar
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>>> Sitio web: http://www.python.org.ar/
>>>>
>>>> Para administrar la lista (o desuscribirse) entrar a
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>>
>>>
>>> _______________________________________________
>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>> Sitio web: http://www.python.org.ar/
>>>
>>> Para administrar la lista (o desuscribirse) entrar a
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>> _______________________________________________
>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>> Sitio web: http://www.python.org.ar/
>>
>> Para administrar la lista (o desuscribirse) entrar a
>> http://listas.python.org.ar/listinfo/pyar
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
> _______________________________________________
> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
> Sitio web: http://www.python.org.ar/
>
> Para administrar la lista (o desuscribirse) entrar a
> http://listas.python.org.ar/listinfo/pyar
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20170823/162a84af/attachment-0001.html>


Más información sobre la lista de distribución pyar