Dump

iterdump to kiosk.sql.

iterdump() yields SQL that rebuilds the database. Write it to kiosk.sql.

Goal

Print the first dump lines and the file.

import sqlite3
from pathlib import Path
con = sqlite3.connect(":memory:")
con.execute("CREATE TABLE cities (name TEXT)")
con.execute("INSERT INTO cities VALUES ('Nairobi')")
Path("kiosk.sql").write_text("\n".join(con.iterdump()) + "\n", encoding="utf-8")
print(Path("kiosk.sql").read_text(encoding="utf-8"))
con.close()
import sqlite3
con = sqlite3.connect(":memory:")
con.executescript("""
CREATE TABLE t (n INTEGER);
INSERT INTO t VALUES (1);
INSERT INTO t VALUES (2);
""")
print(con.execute("SELECT * FROM t").fetchall())
con.close()
from pathlib import Path
print("wrote" if Path("kiosk.sql").exists() else "missing")
import sqlite3
con = sqlite3.connect(":memory:")
print("\n".join(list(con.iterdump())[:3]))
con.close()