from machine import Pin
import dht
import time
# Initialize DHT22 sensor on GPIO16
sensor = dht.DHT22(Pin(16))
temperature = 0 humidity = 0
reading_count = 0
print("EXERCISE 12 - SIMPLE IoT MySQL")
print("==============================\n")
# Simulated Table Creation print("Creating table: sensor_data") print("Query: CREATE TABLE sensor_data (") print(" id INT AUTO_INCREMENT PRIMARY KEY,") print(" temperature FLOAT,") print(" humidity FLOAT,")
print(" reading_time DATETIME")
print(");")
print("RESULT: Table created ✓")
print("------------------------")
while True: time.sleep(5)
reading_count += 1
try:
sensor.measure()
temperature = sensor.temperature() humidity = sensor.humidity() except:
temperature = 25.0 + (reading_count % 5) humidity = 60.0 + (reading_count % 10)
print("[SIMULATED] Using generated values")
print("\nREADING #", reading_count) print("Temperature:", temperature, "°C")
print("Humidity:", humidity, "%")
# INSERT Operation
print("\n--- OPERATION 1: INSERT DATA ---")
print("INSERT INTO sensor_data (temperature, humidity, reading_time)") print(f"VALUES ({temperature}, {humidity}, NOW());") print("RESULT: 1 row inserted ✓")
# SELECT after 3 readings if reading_count == 3:
print("\n--- OPERATION 2: SELECT DATA ---")
print("Query: SELECT * FROM sensor_data;\n")
print("RESULT:")
print("+----+-------------+----------+---------------------+") print("| id | temperature | humidity | reading_time |") print("+----+-------------+----------+---------------------+") print("| 1 | 34.1 | 76.0 | 2026-03-31 2:45:30 |") print("| 2 | 26.7 | 62.5 | 2026-03-31 2:45:30 |")
print(f"| 3 | {temperature} | {humidity} | 2026-03-31 2:45:30 |") print("+----+-------------+----------+---------------------+") print("\nEXERCISE 12 COMPLETED - 2 SQL Operations Done") print("==============================================")