示例#1
0
        public static void InsertScenToDB(string id, int currentScenNo, Dictionary <ScenType, double[]> currentScenData, Tools.DBConnParams dbP)
        {
            // 데이터 전환 to list<object[]>
            // id, asset, scenno, val
            var lst = new List <object[]>();

            object[] obj;

            foreach (var kv in currentScenData)
            {
                string asset = kv.Key.ToString();
                for (int i = 0; i < kv.Value.Length; i++)
                {
                    obj    = new object[5];
                    obj[0] = id;
                    obj[1] = asset;
                    obj[2] = currentScenNo;
                    obj[3] = i;
                    obj[4] = kv.Value[i];
                    lst.Add(obj);
                }
            }

            // db입력
            Tools.MsSqlDbConn dbConn = new Tools.MsSqlDbConn(dbP);
            //Tools.MySqlDBConn dbConn = new Tools.MySqlDBConn(dbP);
            dbConn.Insert(lst, @"TestScen");
        }
示例#2
0
        public ProjRunner(string[] args)
        {
            try
            {
                runGuid = args[0];

                // 디비 연결
                dbP = new Tools.DBConnParams()
                {
                    ServerName = @"kkhproj-db.czuxn57jn8hk.ap-northeast-2.rds.amazonaws.com", ServerID = "admin", ServerPW = "kkh198400", DbName = "proj"
                };
                msConn = new Tools.MsSqlDbConn(dbP);

                // 런 인포 받아오기
                string query   = $@"select top 1 id, arguments from RunInfo where guid = '{runGuid}'";
                var    runArgs = msConn.GetResult(query)[0];
                jobId  = runArgs[0].ToString();
                infId  = runArgs[1].ToString().Split(' ')[0];
                scenId = runArgs[1].ToString().Split(' ')[1];

                // 환경변수 가져오기
                machineName = Environment.GetEnvironmentVariable("kkhproj", EnvironmentVariableTarget.User);

                // 인포스 시작, 끝 가져오기
                query = $@"select top 1 StartNo, EndNo from RunStatus where guid ='{runGuid}' and machinename = '{machineName}'";
                var res  = msConn.GetResult(query)[0];
                int sInf = Convert.ToInt32(res[0]);
                int eInf = Convert.ToInt32(res[1]);

                // 상태 업데이트
                WriteLog("Running");
                Console.WriteLine($@"Ready to Run {machineName}");

                // 런파라미터
                rs                 = new RunSettings();
                rs.IdMP            = infId;
                rs.MpNoStart       = sInf;
                rs.MpNoEnd         = eInf;
                rs.ResultLabel     = jobId;
                rs.ScenCntOneBatch = 1000;
                rs.ScenBatchCnt    = 1;
                rs.InsertsByPol    = true;
                rs.InsertsByScen   = false;
            }
            catch (Exception e)
            {
                WriteLog("Failed_Init \n" + e.ToString());
                throw new Exception("Fail to start program");
            }
        }
示例#3
0
        public void LoadRecords(Tools.DBConnParams dbParams)
        {
            Tools.IDbConnection dbConn = new Tools.MsSqlDbConn(dbParams);

            //string query = $@"select * from Records where id = '{whereID}' and elapsedmth=60 and premyr=10 and startageofsomething = 60 limit 1";
            string query    = $@"select * from Records where id = '{RSettings.IdMP}' and contno >= {RSettings.MpNoStart} and contno <= {RSettings.MpNoEnd}";
            var    recsFrom = dbConn.GetResult(query);

            if (recsFrom.Count == 0)
            {
                throw new Exception("no recs for db");
            }

            Recs = Tools.LibsData.GetInstance <Record>(recsFrom);
        }
示例#4
0
        public static void TestDB()
        {
            //Tools.DBConnParams dbPMS = new Tools.DBConnParams();
            //dbPMS.InitMS();
            //Tools.IDbConnection connMS = new Tools.MsSqlDbConn(dbPMS);

            Tools.DBConnParams dbPMY = new Tools.DBConnParams();
            dbPMY.InitMY();
            Tools.IDbConnection connMY = new Tools.MySqlDBConn(dbPMY);

            var dbP = new Tools.DBConnParams()
            {
                ServerName = @"kkhproj-db.czuxn57jn8hk.ap-northeast-2.rds.amazonaws.com", ServerID = "admin", ServerPW = "kkh198400", DbName = "proj"
            };

            Tools.MsSqlDbConn connMS2 = new Tools.MsSqlDbConn(dbP);

            IDataReader dr = connMY.GetDataReader($@"select * from lapse");

            connMS2.Insert(dr, "lapse");

            dr = connMY.GetDataReader($@"select * from mortality");
            connMS2.Insert(dr, "mortality");
        }