我目前正在使用树莓派,并使用DHT11读取每秒的温度和湿度值。我必须将这些值实时保存到数据库中。这是我的每秒显示传感器数据的代码,我不知道如何以及在哪里插入到数据库的连接线。
import RPi.GPIO as GPIO
import dht11
import time
import datetime
# initialize GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.cleanup()
# read data using pin 7
instance = dht11.DHT11(pin=4)
while True:
result = instance.read()
if result.is_valid():
print("Last valid input: " + str(datetime.datetime.now()))
print("Temperature: %d C" % result.temperature)
#print("Temperature: %d F" % ((result.temperature * 9/5) + 32))
print("Humidity: %d %%" % result.humidity)
time.sleep(1)
发布于 2017-08-14 20:16:05
首先在系统上安装MySQL db,然后使用PyMySQL或任何其他库从python连接到MySQL (如果使用的是PyMySQL ),请使用此DOC
安装库使用
pip install PyMySQL
建立连接一次,因此将连接代码放在while循环的顶部
db = PyMySQL.connect("localhost:port","username","password","database_name" )
cursor = db.cursor()
while True:
在while循环中使用游标执行SQL查询,您可以在其中存储有效的结果
sql = "insert into table_name(id,feild1,feild2) values (1,value1,value2);"
# Execute the SQL command
cursor.execute(sql)
# Commit your changes in the database
db.commit()
将字段、表名和连接信息更改为数据库中的字段,并将INSERT语句中的值替换为传感器值
https://stackoverflow.com/questions/45673528
复制相似问题