从多个脚本插入到 Mariadb
Inserting to Mariadb from multiple scripts
所以目前我有 1 个脚本使用 python 每小时将传感器数据插入我的天气数据库。
我现在添加了第二个脚本,以每小时将降雨数据添加到同一个 table。
现在的问题是:当第二个脚本插入时,所有其他值都得到 'zeroed'。如grafana中显示。
我是在覆盖某处,还是有人能指出正确的方向
天气传感器插入语句
sql=("INSERT INTO WEATHER_MEASUREMENT (AMBIENT_TEMPERATURE, AIR_PRESSURE, HUMIDITY) VALUES ({},{},{})".format(temperature,pressure,humidity))
mycursor.execute(sql)
weatherdb.commit()
插入雨量传感器
sql=("INSERT INTO WEATHER_MEASUREMENT (RAINFALL) VALUES ({})".format(rainfall))
mycursor.execute(sql)
weatherdb.commit()
请告诉我我是否理解正确:
您的 table “WEATHER_MEASUREMENT” 有 4 列(除了 ID):AMBIENT_TEMPERATURE、AIR_PRESSURE、湿度和降雨量。
当您添加 RAINFALL 值时,它会在您的 table 中创建一个新行,其他列值为“NULL”,这就是问题所在吗?
如果是这种情况,您可能希望使用如下查询更新现有行:
sql = ("""
UPDATE _ WEATHER_MEASUREMENT
SET RAINFALL = "{}"
WHERE id_of_the_row = {}
""".format(rainfall, id)
mycursor.execute(sql)
您需要找到一种方法来找出您刚刚使用天气传感器插入语句创建的行的 ID(如果您确定时间,可以搜索最后插入的行)。
所以目前我有 1 个脚本使用 python 每小时将传感器数据插入我的天气数据库。
我现在添加了第二个脚本,以每小时将降雨数据添加到同一个 table。
现在的问题是:当第二个脚本插入时,所有其他值都得到 'zeroed'。如grafana中显示。
我是在覆盖某处,还是有人能指出正确的方向
天气传感器插入语句
sql=("INSERT INTO WEATHER_MEASUREMENT (AMBIENT_TEMPERATURE, AIR_PRESSURE, HUMIDITY) VALUES ({},{},{})".format(temperature,pressure,humidity))
mycursor.execute(sql)
weatherdb.commit()
插入雨量传感器
sql=("INSERT INTO WEATHER_MEASUREMENT (RAINFALL) VALUES ({})".format(rainfall))
mycursor.execute(sql)
weatherdb.commit()
请告诉我我是否理解正确: 您的 table “WEATHER_MEASUREMENT” 有 4 列(除了 ID):AMBIENT_TEMPERATURE、AIR_PRESSURE、湿度和降雨量。 当您添加 RAINFALL 值时,它会在您的 table 中创建一个新行,其他列值为“NULL”,这就是问题所在吗? 如果是这种情况,您可能希望使用如下查询更新现有行:
sql = ("""
UPDATE _ WEATHER_MEASUREMENT
SET RAINFALL = "{}"
WHERE id_of_the_row = {}
""".format(rainfall, id)
mycursor.execute(sql)
您需要找到一种方法来找出您刚刚使用天气传感器插入语句创建的行的 ID(如果您确定时间,可以搜索最后插入的行)。