diff --git a/uart/uart.cpp b/uart/uart.cpp index 99e4553..b23c2dd 100644 --- a/uart/uart.cpp +++ b/uart/uart.cpp @@ -635,6 +635,23 @@ void Uart::DealDataNodeName(const char *pData) { sqlite_db_ctrl::instance().UpdateTableData(T_SENSOR_INFO(TNAME), uplCon, whereCon); std::string strData = sqlite_db_ctrl::instance().GetNodeConfigureInfor(whereCon); data_publish(strData.c_str(), GlobalConfig::Topic_G.mPubConfig.c_str()); + + char szTableName[50] = {0x00}; + char sql_table_exist[50] = {0}; + sprintf(szTableName, "t_data_%s", MeasurementID); + sprintf(sql_table_exist,"select count(*) from sqlite_master where type='table' and name = '%s';",szTableName); + int ret = sqlite_db_ctrl::instance().ExeSql(sql_table_exist); + if (ret == 0){ + sqlite_db_ctrl::instance().Createtable(szTableName); + } + memset(sql_table_exist, 0x00, sizeof(sql_table_exist)); + memset(szTableName, 0x00, sizeof(szTableName)); + sprintf(szTableName, "t_dataStatic_%s", MeasurementID); + sprintf(sql_table_exist,"select count(*) from sqlite_master where type='table' and name = '%s';",szTableName); + ret = sqlite_db_ctrl::instance().ExeSql(sql_table_exist); + if (ret == 0){ + sqlite_db_ctrl::instance().CreatedataStatictable(szTableName); + } } void Uart::DealDataNodeInfo(const char *pData) { @@ -884,12 +901,7 @@ void Uart::DealDataNodeInfo(const char *pData) { zlog_error(zct, "res = %d", res); } } - char szTableName[50] = {0x00}; - sprintf(szTableName, "t_data_%s", dataNodeInfo.ZigbeeLongAddr.c_str()); - sqlite_db_ctrl::instance().Createtable(szTableName); - memset(szTableName, 0x00, sizeof(szTableName)); - sprintf(szTableName, "t_dataStatic_%s", dataNodeInfo.ZigbeeLongAddr.c_str()); - sqlite_db_ctrl::instance().CreatedataStatictable(szTableName); + Json::Value jsonVal; jsonVal.clear(); jsonVal["cmd"] = "26";