将传感器数据保存到数据库

时间:2017-08-14 11:28:40

标签: python mysql raspberry-pi

我目前正在使用raspberry pi并使用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)

1 个答案:

答案 0 :(得分:0)

首先在你的系统上安装MySQL数据库,然后使用PyMySQL或任何其他库从python连接到MySQL,如果使用PyMySQL则通过这个DOC

使用

安装库
pip install PyMySQL

连接一次,将连接代码放在while循环上

    db = PyMySQL.connect("localhost:port","username","password","database_name" )
    cursor = db.cursor()
    while True:

在while循环中使用cursor进行SQL-QUERY执行,在其中获得要存储的有效结果

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语句中的值替换为传感器值