Example #1
0
    //public void SaveWithJNDKL8(DatabaseForm dbf, string filePath, DateTime startDateTime)
    //{
    //    string connectionString = "Data Source=" + filePath + ";Pooling=true;FailIfMissing=false";
    //    SQLiteConnection sQLiteConnection = new SQLiteConnection(connectionString);
    //    sQLiteConnection.Open();
    //    SQLiteCommand sQLiteCommand = sQLiteConnection.CreateCommand();
    //    sQLiteCommand.CommandText = string.Format("SELECT max(shiJian) FROM JNDKL8");
    //    sQLiteCommand.CommandType = CommandType.Text;
    //    DateTime dt;
    //    using (SQLiteDataReader sQLiteDataReader = sQLiteCommand.ExecuteReader())
    //    {
    //        sQLiteDataReader.Read();
    //        dt = ((!(((DbDataReader)sQLiteDataReader)[0].ToString() == "")) ? DateTime.Parse(((DbDataReader)sQLiteDataReader)[0].ToString()) : startDateTime);
    //    }
    //    sQLiteCommand.CommandText = string.Format("DELETE FROM  JNDKL8  where shiJian>='{0}'", dt.ToString("yyyy-MM-dd"));
    //    sQLiteCommand.CommandType = CommandType.Text;
    //    sQLiteCommand.ExecuteNonQuery();
    //    Converts converts = new Converts();
    //    GetInitialData getInitialData = new GetInitialData();
    //    DbTransaction dbTransaction = sQLiteConnection.BeginTransaction();
    //    while (true)
    //    {
    //        string a = dt.ToString("yyyy-MM-dd");
    //        DateTime dateTime = DateTime.Now;
    //        dateTime = dateTime.AddDays(1.0);
    //        if (a != dateTime.ToString("yyyy-MM-dd"))
    //        {
    //            dbf.Text = "正在更新:" + dt.ToString("yyyy-MM-dd");
    //            List<JNDKL8list> jNDKL = getInitialData.getJNDKL8(dt);
    //            for (int i = 0; i < jNDKL.Count; i++)
    //            {
    //                int[] numList = jNDKL[i].getNumList();
    //                SQLiteCommand sQLiteCommand2 = sQLiteCommand;
    //                object[] array = new object[6];
    //                object[] array2 = array;
    //                dateTime = jNDKL[i].getTime(dt.ToString("yyyy/MM/dd"));
    //                array2[0] = dateTime.ToString("yyyy-MM-dd HH:mm:ss");
    //                array[1] = jNDKL[i].cTermResult;
    //                array[2] = jNDKL[i].getQiHao();
    //                array[3] = converts.toJND28(numList);
    //                array[4] = converts.toJND16(numList);
    //                array[5] = converts.toJND11(numList);
    //                sQLiteCommand2.CommandText = string.Format("INSERT INTO JNDKL8(shiJian,neiRong,qiHao,JND28,JND16,JND11) VALUES ('{0}', '{1}',{2}, {3},{4}, {5})", array);
    //                sQLiteCommand.ExecuteNonQuery();
    //            }
    //            dt = dt.AddDays(1.0);
    //            continue;
    //        }
    //        break;
    //    }
    //    dbTransaction.Commit();
    //    sQLiteCommand.Dispose();
    //    dbf.Text = "更新数据库";
    //    sQLiteConnection.Close();
    //    sQLiteConnection.Dispose();
    //}

    public void SaveWithPK10(string filePath, DateTime startDateTime, System.ComponentModel.BackgroundWorker worker)
    {
        string           connectionString = "Data Source=" + filePath + ";Pooling=true;FailIfMissing=false";
        SQLiteConnection sQLiteConnection = new SQLiteConnection(connectionString);

        sQLiteConnection.Open();
        SQLiteCommand sQLiteCommand = sQLiteConnection.CreateCommand();

        sQLiteCommand.CommandText = string.Format("SELECT max(shiJian) FROM PK10");
        sQLiteCommand.CommandType = CommandType.Text;
        DateTime dt;

        using (SQLiteDataReader sQLiteDataReader = sQLiteCommand.ExecuteReader())
        {
            sQLiteDataReader.Read();
            dt = ((!(((DbDataReader)sQLiteDataReader)[0].ToString() == "")) ? DateTime.Parse(((DbDataReader)sQLiteDataReader)[0].ToString()) : startDateTime);
        }
        sQLiteCommand.CommandText = string.Format("DELETE FROM  PK10  where shiJian>='{0}'", dt.ToString("yyyy-MM-dd"));
        sQLiteCommand.CommandType = CommandType.Text;
        sQLiteCommand.ExecuteNonQuery();
        Converts       converts       = new Converts();
        GetInitialData getInitialData = new GetInitialData();
        DbTransaction  dbTransaction  = sQLiteConnection.BeginTransaction();

        while (true)
        {
            string   a        = dt.ToString("yyyy-MM-dd");
            DateTime dateTime = DateTime.Now;
            dateTime = dateTime.AddDays(1.0);
            if (a != dateTime.ToString("yyyy-MM-dd"))
            {
                //dbf.Text = "正在更新:" + dt.ToString("yyyy-MM-dd");
                worker.ReportProgress(1, "正在更新:" + dt.ToString("yyyy-MM-dd"));//报告工作进度
                Console.WriteLine("正在更新:" + dt.ToString("yyyy-MM-dd"));
                // 如果查询的时间是今天,并且小于9:20,就不查询
                if (dt.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") &&
                    DateTime.Compare(DateTime.Now,
                                     DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " 09:15:00")) < 0)
                {
                    dt = dt.AddDays(1.0); continue;
                }

                //List<PK10> pK = getInitialData.getPK10(dt);getPK10_by168kai
                List <PK10> pK = getInitialData.getPK10_by168kai(dt);
                for (int i = 0; i < pK.Count; i++)
                {
                    int[]         numList        = pK[i].ListOpencode.ToArray();
                    SQLiteCommand sQLiteCommand2 = sQLiteCommand;
                    object[]      array          = new object[6];
                    array[0] = pK[i].Opentime.ToString("yyyy-MM-dd HH:mm:ss");
                    array[1] = pK[i].Opencode;
                    array[2] = pK[i].Expect;
                    array[3] = converts.toPK10GJ(numList);
                    array[4] = converts.toPK10QH(numList, pK[i].Expect);
                    array[5] = converts.toPK22GJ(numList);
                    sQLiteCommand2.CommandText = string.Format("INSERT INTO PK10(shiJian,neiRong,qiHao,PK10GJ,PK10QH,PK22GJ) VALUES ('{0}', '{1}',{2}, {3},{4}, {5})", array);
                    sQLiteCommand.ExecuteNonQuery();
                }
                dt = dt.AddDays(1.0);
                continue;
            }
            break;
        }
        dbTransaction.Commit();
        sQLiteCommand.Dispose();
        sQLiteConnection.Close();
        sQLiteConnection.Dispose();
    }
Example #2
0
        // 测试
        private void button1_Click(object sender, EventArgs e)
        {
            GetInitialData getInitialData = new GetInitialData();

            getInitialData.getBJKL8_by168kai(new DateTime(2018, 5, 1));
        }