import os import psycopg2 from psycopg2.extras import RealDictCursor SEARCH_TERM = '8yl' def search(): try: db_url = os.environ.get('DATABASE_URL', 'postgresql://suggestbet:SuGGesT2026SecuRe@localhost:15432/boilerplate_db') conn = psycopg2.connect(db_url, cursor_factory=RealDictCursor) cursor = conn.cursor() print(f"Searching for ID starting with '{SEARCH_TERM}' in live_matches...") cursor.execute("SELECT id, match_name FROM live_matches WHERE id LIKE %s", (SEARCH_TERM + '%',)) live_rows = cursor.fetchall() for r in live_rows: print(f"LIVE FOUND: {r['id']} | {r['match_name']}") print(f"\nSearching for ID starting with '{SEARCH_TERM}' in matches...") cursor.execute("SELECT id, sport, mst_utc FROM matches WHERE id LIKE %s", (SEARCH_TERM + '%',)) match_rows = cursor.fetchall() for r in match_rows: print(f"ARCHIVE FOUND: {r['id']} | {r['sport']}") if not live_rows and not match_rows: print("\n❌ No matches found with that partial ID.") print("\nShowing first 10 live matches as sample:") cursor.execute("SELECT id, match_name FROM live_matches LIMIT 10") for r in cursor.fetchall(): print(f"SAMPLE: {r['id']} | {r['match_name']}") except Exception as e: print(e) if __name__ == "__main__": search()