import pymysql import time t = time.strftime('%Y-%m-%d %H:%M:%S') # 连接数据库 def begin(): db = pymysql.connect(host='192.168.137.56', user='root', password='123456', database='znjj', charset='utf8') # 使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() # print("数据库连接成功!") return cursor, db # 使用 execute() 方法执行 SQL 查询 # cursor.execute("SELECT VERSION()") # 使用 fetchone() 方法获取单条数据. # data = cursor.fetchone() # 关闭数据库连接 # db.close() ''' ============================================================================================ 以上是数据库连接操作 ============================================================================================ ''' def rl_insert(num, name): cursor, db = begin() try: sql = "insert into user(id, name) values ('"+num+"','"+name+"')" print(sql) # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") # rl_insert("8","312313") # print("12345678910") def rl_update(id ,information, name): cursor, db = begin() try: sql = "update user set "+ information +" = '"+ name +"' WHERE id = "+ id # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") # rl_update("7", "name", "32131231231") def rl_select(function): cursor, db = begin() # 查询语句 try: cursor = db.cursor() sql = "select "+ function +" from user " cursor.execute(sql) result = cursor.fetchall() # for data in result: # print(data) except Exception: print("查询失败") return result # 用户表信息删除 def rl_delete(id): cursor, db = begin() # SQL 删除语句 sql = "DELETE FROM user WHERE id="+ id try: # 执行SQL语句 cursor.execute(sql) # 向数据库提交 db.commit() except: # 发生错误时回滚 db.rollback() # 关闭连接 db.close() # 成功提示 print("victory!") # rl_delete("8") def rl_Nselect(information, id): cursor, db = begin() # 查询语句 try: cursor = db.cursor() sql = "select "+ information +" from user where id = " + id cursor.execute(sql) result = cursor.fetchall() # for data in result: # print(data) except Exception: print("查询失败") return result # name = rl_Nselect("sex","6") # print(t+name[0][0]) ''' ============================================================================================ 以上是居家人士(user)表的操作 ============================================================================================ ''' def hcsr_insert(table, id, time, num): cursor, db = begin() try: sql = "insert into "+ table +" (num_id, monitor_time, first_photo) values ('" + id + "','" + time + "','"+ num +"')" print(sql) # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") t = time.strftime('%Y-%m-%d %H:%M:%S') # hcsr_insert("hcsr", "8", t, "5") def hcsr_update(table, information, name, use_id): cursor, db = begin() try: sql = "update "+ table +" set "+ information +" = '"+ name +"' WHERE num_id = "+ use_id # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") # hcsr_update("hcsr", "last_photo", "5", "7") def hcsr_select(table, function): cursor, db = begin() # 查询语句 try: cursor = db.cursor() sql = "select "+function+" from "+ table cursor.execute(sql) result = cursor.fetchall() # for data in result: # print(data) except Exception: print("查询失败") return result # x = hcsr_select("hcsr", "max(id)") # print(x[0][0]) ''' ============================================================================================ 以上是自动监控(user)表的操作和视频监控(m_photo)表的操作 ============================================================================================ ''' def check_insert(num, id, name, function, time): cursor, db = begin() try: sql = "insert into check_auth (number, id, name, function_use, time) values ('"+ num +"','" + id + "','" + name + "','" + function +"','"+ time +"')" print(sql) # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") # check_insert("2","5","常旭光","门锁", t) def check_select(function): cursor, db = begin() # 查询语句 try: cursor = db.cursor() sql = "select "+function+" from check_auth" cursor.execute(sql) result = cursor.fetchall() # for data in result: # print(data) except Exception: print("查询失败") return result x = check_select("max(number)") # print(x) ''' ============================================================================================ 以上是查看权限操作(check_auth)表的操作 ============================================================================================ ''' # 数据库插入信息 温湿度表 def th_insert(number, time, t_number, h_number): cursor, db = begin() try: sql = "insert into th (number, check_time, temperature, humidity) values ('"+number+"','"+time+"','"+t_number+"','"+h_number+"')" # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") # th_insert("2", "2023-04-19 23:44:15","53.0","21.4") def th_select(function): cursor, db = begin() # 查询语句 try: cursor = db.cursor() sql = "select "+function+" from th" cursor.execute(sql) result = cursor.fetchall() # for data in result: # print(data) except Exception: print("查询失败") return result ''' ============================================================================================ 以上是温湿度(th)表的操作 ============================================================================================ ''' def ms_insert(num, time, state): cursor, db = begin() try: sql = "insert into ms (number, time_open, state) values ('"+num+"','"+time+"','"+state+"')" # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") t = time.strftime('%Y-%m-%d %H:%M:%S') # ms_insert("1",t,"close") def ms_update(information, n, number): cursor, db = begin() try: sql = "update ms set "+ information +" = '"+ n +"' WHERE number = "+ number # 运行sql语句 cursor.execute(sql) # 修改 db.commit() # 关闭游标 cursor.close() # 关闭连接 db.close() print("victory!") except: print("false") # ms_update("close_state", "Y", "1") def ms_select(function): cursor, db = begin() # 查询语句 try: cursor = db.cursor() sql = "select "+function+" from ms" cursor.execute(sql) result = cursor.fetchall() # for data in result: # print(data) except Exception: print("查询失败") return result # x = ms_select("max(number)") # print(x[0][0]) ''' ============================================================================================ 以上是门锁控制(ms)表的操作 ============================================================================================ '''