Я пытаюсь вставить строку с малиной pi в базу данных wamp, которая установлена на моем ПК. Оба устройства подключены к одному маршрутизатору, я сделал пользовательские привилегии для RPi, но когда я пытаюсь подключиться к базе данных, код вставлен в разъем. Функция соединения и исключение не вызывается. Это используемый код:
from mysql import connector
print('0')
try:
con = connector.Connect(user='own_pi',password='password',database='tempbase',host='192.168.0.104', port=3306)
except connector.Error as e:
print("Error code:", e.errno) # error number
print("SQLSTATE value:", e.sqlstate) # SQLSTATE value
print("Error message:", e.msg) # error message
print("Error:", e) # errno, sqlstate, msg values
s = str(e)
print("Error:", s) # errno, sqlstate, msg values
print('1')
cur = con.cursor()
print('2')
cur.execute("INSERT INTO 'sensor_readings' ('uid', 'local_id', 'type', 'date', 'reading') VALUES ('7', '4', 'temperature', '2018-06-04', '24.4');")
print('3')
con.commit()
print('4')
con.close()
print('5')
Эта строка печати ('1') никогда не вызывается, и процесс остается навсегда.
Вы знаете, что может спровоцировать такое поведение и как я могу это исправить?
Ключевой причиной этой проблемы были настройки брандмауэра по умолчанию Windows 10. Спасибо за поддержку.
Попробуйте использовать:
from mysql import connector
print('0')
try:
con = connector.Connect(user='own_pi',password='password',database='tempbase',host='192.168.0.104', port=3306)
print('1')
cur = con.cursor()
print('2')
cur.execute("INSERT INTO 'sensor_readings' ('uid', 'local_id', 'type', 'date', 'reading') VALUES ('7', '4', 'temperature', '2018-06-04', '24.4');")
print('3')
con.commit()
print('4')
con.close()
print('5')
except connector.Error as e:
print("Error code:", e.errno) # error number
print("SQLSTATE value:", e.sqlstate) # SQLSTATE value
print("Error message:", e.msg) # error message
print("Error:", e) # errno, sqlstate, msg values
s = str(e)
print("Error:", s) # errno, sqlstate, msg values