def Inserter(self, TaskQueue): self.LimitQueue.put(1) if not self.InsertLock.acquire(): self.InsertLock.wait() DBHandler = DataBaseManager.DBHandler("UNIDATABASE") while not TaskQueue.empty(): Task = TaskQueue.get() DBHandler.Insert(Task[0], Task[1], Task[2]) DBHandler.Commit() self.Did += 1 del DBHandler self.InsertThreadNum -= 1 self.InsertLock.notify() self.InsertLock.release()
import pandas as pd import numpy as np import matplotlib.pyplot as plt import codecs import DataBaseManager import GetData from pandas.tools.plotting import andrews_curves import seaborn as sns Head = ['AQI', '范围', '质量等级', 'PM2.5', 'PM10', 'SO2', 'CO', 'NO2', 'O3'] CityListO = codecs.open("CityList.info", "r", "utf-8") CityList = [item.strip('\r') for item in CityListO.read().split('\n')] CityListO.close() DataBase = DataBaseManager.DBHandler("DATABASE") Connection = DataBase.GetConn() OriginalTime = OT = "20131202" def queryByDate(startDate, endingDate, city, freq="D"): QueryResult = [ list(item) for item in DataBase.Query(city, int(startDate), int(endingDate)) ] index = pd.date_range(startDate, endingDate) df = pd.DataFrame(QueryResult) Date = df[[0]] Data = df[[1, 2, 3, 4, 5, 6, 7, 8, 9]] Data.columns = Head ChangeList = ['AQI', 'PM2.5', 'PM10', 'SO2', 'CO', 'NO2', 'O3'] Data = Data.apply(lambda x: pd.to_numeric(x, errors='ignore')) Date = pd.to_datetime(Date[0], format='%Y%m%d', errors='ignore')
import DataBaseManager DBHandler = DataBaseManager.DBHandler("UNIDATABASE") TableList = DBHandler.Tables() Count = 0 for Table in TableList: Count += DBHandler.Count(Table) print(Count)