Exemple #1
0
        public static void InsertBankPower(int i_bankid, double f_power, DateTime dt_inserttime, DBConn conn)
        {
            try
            {
                long num = Convert.ToInt64(f_power * 10000.0);
                if (DBUrl.SERVERMODE)
                {
                    string item = string.Concat(new object[]
                    {
                        "insert into bank_auto_info",
                        dt_inserttime.ToString("yyyyMMdd"),
                        " (bank_id,power,insert_time ) values(",
                        i_bankid,
                        ",",
                        num,
                        ",#",
                        dt_inserttime.ToString("yyyy-MM-dd HH:mm:ss"),
                        "#)"
                    });
                    WorkQueue <string> .getInstance().WorkSequential = true;

                    WorkQueue <string> .getInstance().EnqueueItem(item);
                }
                else
                {
                    if (DBUrl.DB_CURRENT_TYPE.Equals("MYSQL"))
                    {
                        string item2 = string.Concat(new object[]
                        {
                            "insert into bank_auto_info",
                            dt_inserttime.ToString("yyyyMMdd"),
                            " (bank_id,power,insert_time ) values(",
                            i_bankid,
                            ",",
                            num,
                            ",#",
                            dt_inserttime.ToString("yyyy-MM-dd HH:mm:ss"),
                            "#)"
                        });
                        WorkQueue <string> .getInstance().WorkSequential = true;

                        WorkQueue <string> .getInstance().EnqueueItem(item2);
                    }
                    else
                    {
                        List <string> list = new List <string>();
                        list.Add(string.Concat(i_bankid));
                        list.Add(dt_inserttime.ToString("yyyy-MM-dd HH:mm:ss"));
                        list.Add("bank_auto_info");
                        list.Add(string.Concat(num));
                        PDDataProcess.GetInstance().PutItem(list);
                    }
                }
            }
            catch (Exception ex)
            {
                DebugCenter.GetInstance().appendToFile("DBERROR~~~~~~~~~~~DBERROR : " + ex.Message + "\n" + ex.StackTrace);
            }
        }
Exemple #2
0
        private void CompactThread()
        {
            Interlocked.Exchange(ref this._threadDone, 0);
            int arg_12_0 = Environment.TickCount;

            try
            {
                File.Delete(this._dstDatabasePath);
                this._result = this.CompactDB(this._srcDatabasePath, this._dstDatabasePath, this._password);
                string text = "";
                if (this._result)
                {
                    text = this._dstDatabasePath;
                }
                else
                {
                    text = this._srcDatabasePath;
                }
                int num = DBTools.ShudownAccess();
                if (num > 0)
                {
                    try
                    {
                        if (File.Exists(AppDomain.CurrentDomain.BaseDirectory + "datadb.mdb") && File.Exists(text))
                        {
                            string text2 = AppDomain.CurrentDomain.BaseDirectory + DateTime.Now.ToString("yyyyMMddHHmmss") + "_tmpdatadb.mdb";
                            bool   flag  = true;
                            int    num2  = 0;
                            while (flag && num2 < 5)
                            {
                                try
                                {
                                    FileInfo fileInfo = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "datadb.mdb");
                                    fileInfo.MoveTo(text2);
                                    FileInfo fileInfo2 = new FileInfo(text);
                                    fileInfo2.MoveTo(AppDomain.CurrentDomain.BaseDirectory + "datadb.mdb");
                                    flag = false;
                                    TaskStatus.TMPDB_path = text2;
                                    try
                                    {
                                        File.Delete(TaskStatus.DB_compact_tmp);
                                        TaskStatus.DB_compact_tmp = "";
                                    }
                                    catch
                                    {
                                    }
                                    TaskStatus.SetDBStatus(1);
                                }
                                catch (Exception)
                                {
                                }
                                num2++;
                            }
                            if (flag)
                            {
                                TaskStatus.SetDBStatus(1);
                            }
                            else
                            {
                                OleDbConnection oleDbConnection = null;
                                OleDbCommand    oleDbCommand    = new OleDbCommand();
                                try
                                {
                                    string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + TaskStatus.TMPDB_path + ";Jet OLEDB:Database Password=root";
                                    oleDbConnection = new OleDbConnection(connectionString);
                                    oleDbConnection.Open();
                                    oleDbCommand = oleDbConnection.CreateCommand();
                                    try
                                    {
                                        oleDbCommand.CommandText = "select device_id,power_consumption,insert_time from device_data_daily ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item = string.Concat(new string[]
                                            {
                                                "update device_data_daily set power_consumption = power_consumption + ",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                " where device_id = ",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                " and insert_time = #",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd"),
                                                "#"
                                            });
                                            WorkQueue <string> .getInstance_pd().WorkSequential = true;

                                            WorkQueue <string> .getInstance_pd().EnqueueItem(item);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select device_id,power_consumption,insert_time from device_data_hourly ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item2 = string.Concat(new string[]
                                            {
                                                "update device_data_hourly set power_consumption = power_consumption + ",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                " where device_id = ",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                " and insert_time = #",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd HH:mm:ss"),
                                                "#"
                                            });
                                            WorkQueue <string> .getInstance_pd().WorkSequential = true;

                                            WorkQueue <string> .getInstance_pd().EnqueueItem(item2);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select bank_id,power_consumption,insert_time from bank_data_hourly ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item3 = string.Concat(new string[]
                                            {
                                                "update bank_data_hourly set power_consumption = power_consumption + ",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                " where bank_id = ",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                " and insert_time = #",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd HH:mm:ss"),
                                                "#"
                                            });
                                            WorkQueue <string> .getInstance_pd().WorkSequential = true;

                                            WorkQueue <string> .getInstance_pd().EnqueueItem(item3);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select bank_id,power_consumption,insert_time from bank_data_daily ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item4 = string.Concat(new string[]
                                            {
                                                "update bank_data_daily set power_consumption = power_consumption + ",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                " where bank_id = ",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                " and insert_time = #",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd"),
                                                "#"
                                            });
                                            WorkQueue <string> .getInstance_pd().WorkSequential = true;

                                            WorkQueue <string> .getInstance_pd().EnqueueItem(item4);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select port_id,power_consumption,insert_time from port_data_daily ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item5 = string.Concat(new string[]
                                            {
                                                "update port_data_daily set power_consumption = power_consumption + ",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                " where port_id = ",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                " and insert_time = #",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd"),
                                                "#"
                                            });
                                            WorkQueue <string> .getInstance_pd().WorkSequential = true;

                                            WorkQueue <string> .getInstance_pd().EnqueueItem(item5);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select port_id,power_consumption,insert_time from port_data_hourly ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item6 = string.Concat(new string[]
                                            {
                                                "update port_data_hourly set power_consumption = power_consumption + ",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                " where port_id = ",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                " and insert_time = #",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd HH:mm:ss"),
                                                "#"
                                            });
                                            WorkQueue <string> .getInstance_pd().WorkSequential = true;

                                            WorkQueue <string> .getInstance_pd().EnqueueItem(item6);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select device_id,power,insert_time from device_auto_info ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item7 = string.Concat(new string[]
                                            {
                                                "insert into device_auto_info (device_id,power,insert_time ) values(",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                ",",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                ",#",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd HH:mm:ss"),
                                                "#)"
                                            });
                                            WorkQueue <string> .getInstance().WorkSequential = true;

                                            WorkQueue <string> .getInstance().EnqueueItem(item7);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select bank_id,power,insert_time from bank_auto_info ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item8 = string.Concat(new string[]
                                            {
                                                "insert into bank_auto_info (bank_id,power,insert_time ) values(",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                ",",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                ",#",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd HH:mm:ss"),
                                                "#)"
                                            });
                                            WorkQueue <string> .getInstance().WorkSequential = true;

                                            WorkQueue <string> .getInstance().EnqueueItem(item8);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    try
                                    {
                                        oleDbCommand.CommandText = "select port_id,power,insert_time from port_auto_info ";
                                        OleDbDataReader oleDbDataReader = oleDbCommand.ExecuteReader();
                                        while (oleDbDataReader.Read())
                                        {
                                            string item9 = string.Concat(new string[]
                                            {
                                                "insert into port_auto_info (port_id,power,insert_time ) values(",
                                                Convert.ToString(oleDbDataReader.GetValue(0)),
                                                ",",
                                                Convert.ToString(oleDbDataReader.GetValue(1)),
                                                ",#",
                                                Convert.ToDateTime(oleDbDataReader.GetValue(2)).ToString("yyyy-MM-dd HH:mm:ss"),
                                                "#)"
                                            });
                                            WorkQueue <string> .getInstance().WorkSequential = true;

                                            WorkQueue <string> .getInstance().EnqueueItem(item9);
                                        }
                                        oleDbDataReader.Close();
                                    }
                                    catch
                                    {
                                    }
                                    oleDbCommand.Dispose();
                                    oleDbConnection.Close();
                                    try
                                    {
                                        TaskStatus.DB_compact_final = "";
                                        File.Delete(TaskStatus.TMPDB_path);
                                    }
                                    catch
                                    {
                                    }
                                    DebugCenter.GetInstance().appendToFile("Finish compact Access Database ");
                                }
                                catch (Exception)
                                {
                                    oleDbCommand.Dispose();
                                    if (oleDbConnection != null)
                                    {
                                        oleDbConnection.Close();
                                    }
                                }
                            }
                        }
                    }
                    catch (Exception)
                    {
                    }
                }
            }
            catch (Exception)
            {
            }
            Interlocked.Exchange(ref this._threadDone, 1);
        }