borrar registro BD Mysql Python
Publicado por Alejandro Hernandez (5 intervenciones) el 15/10/2012 06:37:27
Buenas. soy un novato en python y he intentado varias cosas para solucionar un problema.
1.) deseo borrar un registro de una Base de Datos el cual consulto primero y envio por socket a un server TCP. mio problema es que no lo hace. y estoy un 99.9999999% seguro que es por que lo estoy haciendo mal jejejeje aca les dejo el codigo completo para que entiendan bien el problema.
la linea que intenta borrar el registro que se consulto en un inicio, lo he intentado por muchas formas, y no he podido. Si ejecuto este codigo, el toma el primer registro de esa tabla y me lo envia bien al servidor tcp. pero cuando llega a la linea de borrar, sale error. por cada metodo que uso salen errores diferentes.
2.) el segundo problema es que el debe conectarse al server tcp y enviar el dato siempre y cuando encuentre algo dentro de la tabla, si no que se quede haciendo el loop en espera de que llegue algo a la base.
explico por que... esto es para un dispositvo que captura datos las 24/7.. es un dispositivo movil en concreto una rasberry PI. y gran parte del tiempo va estar recibiendo datos. pero existe la posibilida que dentro de la base pasen horas o dias sin que le lleguen datos, pero este debe seguir ejecutandose y si llega algo a la base, enviarlo.
gracias y perdonen tanta explicacion
1.) deseo borrar un registro de una Base de Datos el cual consulto primero y envio por socket a un server TCP. mio problema es que no lo hace. y estoy un 99.9999999% seguro que es por que lo estoy haciendo mal jejejeje aca les dejo el codigo completo para que entiendan bien el problema.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/env python
import MySQLdb, sys
import socket
host="localhost"
user="xxxx"
password="xxxx"
database="datos"
try:
db=MySQLdb.Connect(host, user, password, database)
cursor=db.cursor()
except:
print "No se conecto a la Base"
while True:
cursor.execute('select * from local')
registro = cursor.fetchone()
s = socket.socket()
s.connect(("192.168.0.175", 20000))
mensaje =(registro[1])
print (mensaje)
s.send(mensaje)
s.close()
cursor.execute("""DELETE FROM local WHERE datos=%s""",(mensaje))
db.commit()
la linea que intenta borrar el registro que se consulto en un inicio, lo he intentado por muchas formas, y no he podido. Si ejecuto este codigo, el toma el primer registro de esa tabla y me lo envia bien al servidor tcp. pero cuando llega a la linea de borrar, sale error. por cada metodo que uso salen errores diferentes.
2.) el segundo problema es que el debe conectarse al server tcp y enviar el dato siempre y cuando encuentre algo dentro de la tabla, si no que se quede haciendo el loop en espera de que llegue algo a la base.
explico por que... esto es para un dispositvo que captura datos las 24/7.. es un dispositivo movil en concreto una rasberry PI. y gran parte del tiempo va estar recibiendo datos. pero existe la posibilida que dentro de la base pasen horas o dias sin que le lleguen datos, pero este debe seguir ejecutandose y si llega algo a la base, enviarlo.
gracias y perdonen tanta explicacion
Valora esta pregunta


0