Use transaction in delete_everything(), closes #2273

This commit is contained in:
Simon Willison 2024-02-15 21:35:49 -08:00
commit 97de4d6362

View file

@ -69,18 +69,20 @@ async def populate_schema_tables(internal_db, db):
database_name = db.name database_name = db.name
def delete_everything(conn): def delete_everything(conn):
conn.execute( with conn:
"DELETE FROM catalog_tables WHERE database_name = ?", [database_name] conn.execute(
) "DELETE FROM catalog_tables WHERE database_name = ?", [database_name]
conn.execute( )
"DELETE FROM catalog_columns WHERE database_name = ?", [database_name] conn.execute(
) "DELETE FROM catalog_columns WHERE database_name = ?", [database_name]
conn.execute( )
"DELETE FROM catalog_foreign_keys WHERE database_name = ?", [database_name] conn.execute(
) "DELETE FROM catalog_foreign_keys WHERE database_name = ?",
conn.execute( [database_name],
"DELETE FROM catalog_indexes WHERE database_name = ?", [database_name] )
) conn.execute(
"DELETE FROM catalog_indexes WHERE database_name = ?", [database_name]
)
await internal_db.execute_write_fn(delete_everything) await internal_db.execute_write_fn(delete_everything)