From a26305a2fb91f94b65c9e13b222c4c34965a8b1a Mon Sep 17 00:00:00 2001
From: whyclj <1525436766@qq.com>
Date: 星期二, 13 八月 2019 14:03:41 +0800
Subject: [PATCH] 重启程序时检测机房状态表中的机房id和设备id的对应关系,对于不对应的记录进行修复

---
 BattMonitor_DB_Builder/src/com/dev/fbs9100/FBS9100_Task_Thread_SQL.java |   34 ++++++++++++++++++++++++++++++++++
 1 files changed, 34 insertions(+), 0 deletions(-)

diff --git a/BattMonitor_DB_Builder/src/com/dev/fbs9100/FBS9100_Task_Thread_SQL.java b/BattMonitor_DB_Builder/src/com/dev/fbs9100/FBS9100_Task_Thread_SQL.java
index b5a2858..9fce186 100644
--- a/BattMonitor_DB_Builder/src/com/dev/fbs9100/FBS9100_Task_Thread_SQL.java
+++ b/BattMonitor_DB_Builder/src/com/dev/fbs9100/FBS9100_Task_Thread_SQL.java
@@ -477,6 +477,38 @@
 			sql.close_con();
 		}		
 	}
+	
+	/**
+	 * 	检查机房id与设备id不对应的机房记录并予以改正修复
+	 * @param gB_MysqlConnPool
+	 */
+	public static void checkBTSStationState_TableOnRam(MysqlConnPool gB_MysqlConnPool) {
+		String sql_str1 = "SELECT DISTINCT StationName,dev_id,FBSDeviceId,StationId " + 
+				" FROM " + Sql_Mysql.BattInf_Table + "," + Sql_Mysql.BTSStationState_Table +
+				" WHERE tb_battinf.StationId = tb_bts_station_state.station_id " + 
+				" AND tb_battinf.FBSDeviceId != tb_bts_station_state.dev_id ";
+		Sql_Mysql sql = new Sql_Mysql(gB_MysqlConnPool.getConn());
+		ResultSet rs = null;
+		try {
+			rs = sql.sqlMysqlQuery(sql_str1);
+			while(rs.next()) {
+				String stationId = rs.getString("StationId");
+				String FBSDeviceId = rs.getString("FBSDeviceId");
+				sql.sqlMysqlExecute("UPDATE " + Sql_Mysql.BTSStationState_Table + " SET dev_id = " + FBSDeviceId + " WHERE StationId = " + stationId);
+			}
+		} catch (SQLException e) {
+			e.printStackTrace();
+		} finally {
+			if(rs != null) {
+				try {
+					rs.close();
+				} catch (SQLException e) {
+					e.printStackTrace();
+				}
+			}
+			sql.close_con();
+		}		
+	}
 
 	/**
 	 *        创建设备的系统参数表
@@ -524,4 +556,6 @@
 			sql.close_con();
 		}
 	}
+
+	
 }

--
Gitblit v1.9.1