auto-sync: 2026-05-18 06:10:50
This commit is contained in:
@@ -96,20 +96,14 @@ def _batch_update_card_id(conn: sqlite3.Connection, table: str,
|
||||
card_id: str, batch_size: int = 500) -> None:
|
||||
"""分批更新 card_id,避免大表长时间锁"""
|
||||
while True:
|
||||
conn.execute(
|
||||
cursor = conn.execute(
|
||||
f"UPDATE {table} SET card_id=? WHERE rowid IN ("
|
||||
f"SELECT rowid FROM {table} WHERE card_id IS NULL LIMIT {batch_size})",
|
||||
(card_id,),
|
||||
)
|
||||
if conn.total_changes == 0:
|
||||
if cursor.rowcount == 0:
|
||||
break
|
||||
conn.commit()
|
||||
# 检查是否还有剩余
|
||||
row = conn.execute(
|
||||
f"SELECT COUNT(*) as cnt FROM {table} WHERE card_id IS NULL"
|
||||
).fetchone()
|
||||
if not row or row["cnt"] == 0:
|
||||
break
|
||||
|
||||
|
||||
def _safe_add_column(conn: sqlite3.Connection, table: str,
|
||||
|
||||
Reference in New Issue
Block a user