蓄电池监控管理平台数据库初始化程序
重启程序时检测机房状态表中的机房id和设备id的对应关系,对于不对应的记录进行修复
3个文件已修改
44 ■■■■■ 已修改文件
BattMonitor_DB_Builder/src/com/dev/fbs9100/FBS9100_Task_Thread_SQL.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/src/com/version_inf/version_inf.txt 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_DB_Builder/src/main/main_BTS_DB_Builder.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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();
        }
    }
}
BattMonitor_DB_Builder/src/com/version_inf/version_inf.txt
@@ -102,3 +102,6 @@
    
V1.40 edit at date 2019-07-30
    1.在db_app_sys.tb_app_sys表中添加AppServer_Reinit_BattGroupData_LD9_EN字段用于9度设备重载设备数据
V1.41 edit at date 2019-08-13
    1.在运行程序时检测机房状态表中的机房id和设备id的对应关系并且进行修复
BattMonitor_DB_Builder/src/main/main_BTS_DB_Builder.java
@@ -16,7 +16,7 @@
    /**************************************************************************/
    /**************************************************************************/
    public final static boolean app_debug = false;
    public final static float m_VersionNum = (float) 1.040;
    public final static float m_VersionNum = (float) 1.041;
    public final static String m_Version = "Welcome To Use BTS DB BUILDER V" + m_VersionNum + " RC_20180908";
    /**************************************************************************/
    /**************************************************************************/
@@ -98,7 +98,10 @@
        FBS9100_Task_Thread_SQL.createFBS9100SysParam_TableOnRam(GB_MysqlConnPool,recreate_tb);                 
        
        //初始化录入机房状态
        FBS9100_Task_Thread_SQL.insertBTSStationState_TableOnRam(GB_MysqlConnPool);
        FBS9100_Task_Thread_SQL.insertBTSStationState_TableOnRam(GB_MysqlConnPool);
        //重新纠正机房状态表中的机房id和设备id之间的对应关系
        FBS9100_Task_Thread_SQL.checkBTSStationState_TableOnRam(GB_MysqlConnPool);
        
        //初始化数据库  db_battinf
        DB_battinf.init(GB_MysqlConnPool, recreate_tb);