import pymysql

conn = pymysql.connect(host='85.215.144.168', user='asesoft', password='Pantera1', database='pastelerias', charset='utf8mb4')
with conn.cursor() as cur:
    cur.execute("SELECT @@collation_database, @@collation_connection, @@character_set_connection;")
    print('DB Collation settings:', cur.fetchall())
    
    cur.execute("SHOW FULL COLUMNS FROM ge_articulos WHERE Field IN ('descripcion', 'descripcion_etiqueta');")
    print('Columns collation:', cur.fetchall())
    
    # Test comparisons
    tests = [
        "SELECT 'TURRÓN' = 'TURRON' COLLATE utf8mb4_general_ci AS general_ci;",
        "SELECT 'TURRÓN' = 'TURRON' COLLATE utf8mb4_unicode_ci AS unicode_ci;",
        "SELECT 'TURRÓN' = 'TURRON' COLLATE utf8mb4_spanish_ci AS spanish_ci;",
        "SELECT 'TURRÓN' = 'TURRON' COLLATE utf8mb4_unicode_520_ci AS unicode_520_ci;",
        "SELECT 'TURRÓN' LIKE '%TURRON%' COLLATE utf8mb4_general_ci AS like_general_ci;",
        "SELECT 'TURRÓN' LIKE '%TURRON%' COLLATE utf8mb4_unicode_ci AS like_unicode_ci;",
        "SELECT 'TURRÓN' LIKE '%TURRON%' COLLATE utf8mb4_spanish_ci AS like_spanish_ci;",
        "SELECT 'TURRÓN' LIKE '%TURRON%' COLLATE utf8mb4_unicode_520_ci AS like_unicode_520_ci;",
        "SELECT 'PEÑA' = 'PENA' COLLATE utf8mb4_general_ci AS general_ci_n;",
        "SELECT 'PEÑA' = 'PENA' COLLATE utf8mb4_spanish_ci AS spanish_ci_n;",
        "SELECT 'PEÑA' = 'PENA' COLLATE utf8mb4_unicode_ci AS unicode_ci_n;",
    ]
    for t in tests:
        try:
            cur.execute(t)
            print(t.strip(), cur.fetchall())
        except Exception as e:
            print(t.strip(), "ERROR:", e)

    print("\n--- Actual search in ge_articulos ---")
    cur.execute("SELECT id, descripcion FROM ge_articulos WHERE descripcion LIKE '%TURRON%' LIMIT 5;")
    print("Without COLLATE (default):", cur.fetchall())

    cur.execute("SELECT id, descripcion FROM ge_articulos WHERE descripcion LIKE '%TURRON%' COLLATE utf8mb4_general_ci LIMIT 5;")
    print("With utf8mb4_general_ci:", cur.fetchall())

conn.close()
