""" DB env 값 7로 일괄 업데이트: - SCALP_CANDLE_KEEP_DAYS: NULL → 7 (ws_candles) - WS_TICK_KEEP_DAYS: NULL → 7 (ws_ticks - 코드 기본값과 동일하게 명시) - WS_ORDERBOOK_KEEP_DAYS: NULL → 7 - WS_PROGRAM_KEEP_DAYS: NULL → 7 (없으면 신규) - LS_WS_TICK_KEEP_DAYS: 신규 추가 (ls_ws_ticks) - LS_WS_ORDERBOOK_KEEP_DAYS: 이미 7 → 확인 """ import sys, os sys.path.insert(0, '/home/hoon/kis_bot') os.chdir('/home/hoon/kis_bot') from database import TradeDB db = TradeDB() try: # env_config 테이블 컬럼 확인 cols = [dict(r)['Field'] for r in db.conn.execute("SHOW COLUMNS FROM env_config").fetchall()] print(f"env_config 컬럼: {cols}") # env_config_ext 컬럼 확인 cols_ext = [dict(r)['Field'] for r in db.conn.execute("SHOW COLUMNS FROM env_config_ext").fetchall()] print(f"env_config_ext 컬럼: {cols_ext}") # 현재 env_config_ext 값 확인 keys_to_set = [ 'SCALP_CANDLE_KEEP_DAYS', 'WS_TICK_KEEP_DAYS', 'WS_ORDERBOOK_KEEP_DAYS', 'WS_PROGRAM_KEEP_DAYS', 'LS_WS_TICK_KEEP_DAYS', 'LS_WS_ORDERBOOK_KEEP_DAYS', ] for k in keys_to_set: row = db.conn.execute( "SELECT env_value FROM env_config_ext WHERE env_key = %s", (k,) ).fetchone() print(f" 현재 {k} = {dict(row)['env_value'] if row else 'NULL'}") # env_config_ext에 UPSERT (있으면 UPDATE, 없으면 INSERT) import datetime now_str = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") for k in keys_to_set: row = db.conn.execute( "SELECT env_value FROM env_config_ext WHERE env_key = %s", (k,) ).fetchone() if row: db.conn.execute( "UPDATE env_config_ext SET env_value = %s, updated_at = %s WHERE env_key = %s", ('7', now_str, k) ) print(f" UPDATE {k} = 7") else: db.conn.execute( "INSERT INTO env_config_ext (env_key, env_value, updated_at) VALUES (%s, %s, %s)", (k, '7', now_str) ) print(f" INSERT {k} = 7") # 검증 print("\n=== 업데이트 후 확인 ===") for k in keys_to_set: row = db.conn.execute( "SELECT env_value FROM env_config_ext WHERE env_key = %s", (k,) ).fetchone() print(f" {k} = {dict(row)['env_value'] if row else 'NULL'}") finally: db.close()