#!/usr/bin/env python3
"""
check_adid.py - 检查 ads 表中指定 rowid 的记录
"""

import sqlite3

def check_adid(adid):
    db_path = r'\\ll\D\xtrssvjj\db\dpd.db'
    
    try:
        print(f"正在连接数据库: {db_path}")
        conn = sqlite3.connect(db_path, timeout=60.0)
        conn.row_factory = sqlite3.Row
        
        print(f"正在查询 ads 表中 rowid={adid} 的记录...")
        
        query = "SELECT * FROM ads WHERE rowid = ?"
        cursor = conn.execute(query, (adid,))
        
        record = cursor.fetchone()
        
        if record:
            print(f"找到 rowid={adid} 的记录:")
            print("=" * 100)
            
            # 显示所有字段
            for key in record.keys():
                value = record[key]
                if value is None:
                    value = "NULL"
                print(f"  {key}: {value}")
            
            print("=" * 100)
            
            # 检查 srts 表中的对应记录数
            print(f"\n检查 srts 表中 adid={adid} 的记录数...")
            count_query = "SELECT COUNT(*) FROM srts WHERE adid = ?"
            cursor = conn.execute(count_query, (adid,))
            count = cursor.fetchone()[0]
            print(f"srts 表中 adid={adid} 的记录数: {count}")
            
        else:
            print(f"未找到 rowid={adid} 的记录")
        
        conn.close()
        print("数据库连接已关闭")
        
    except Exception as e:
        print(f"错误: {e}")
        import traceback
        traceback.print_exc()

if __name__ == "__main__":
    import sys
    if len(sys.argv) > 1:
        adid = int(sys.argv[1])
    else:
        adid = 8647
    check_adid(adid)
