Posts
SQLite Basics: Update Part of a BLOB with Python
Allocate a fixed-length SQLite BLOB, modify selected byte ranges with blobopen, and verify the result after closing the handle.
October 29, 2026
SQLite Basics: Reject SQL Actions with a Connection Authorizer
Allow a small SELECT query while rejecting UPDATE, DELETE, and schema changes with an explicit SQLite authorizer allowlist.
October 29, 2026
SQLite Basics: Cancel Expensive Queries with a Progress Handler
Interrupt a controlled SQLite query with a Python progress callback, recognize SQLITE_INTERRUPT, and remove the callback before reusing the connection.
October 29, 2026
SQLite Basics: Back Up a Database with Python and Verify the Copy
Create a SQLite backup through Python, reopen it independently, and verify that later source changes do not appear in the saved copy.
October 29, 2026
SQLite Basics: Access Query Columns by Name with sqlite3.Row
Use sqlite3.Row for named query results, give joined columns unique aliases, and understand when a cursor inherits its row factory.
October 29, 2026
Python Basics: Wait for Multiple Local Streams with selectors
Use Python DefaultSelector to read two nonblocking local streams, track EOF, and enforce a bounded demonstration deadline.
October 29, 2026
Python Basics: Round-Trip XML and Binary Property Lists
Read and write XML and binary property lists with Python plistlib on Linux, preserving byte values and rejecting unsupported types.
October 29, 2026
Python Basics: Replace a Complete File Without Exposing a Partial Write
Stage a text file beside its destination and replace it on Linux, while observing that an existing reader keeps its old file handle.
October 29, 2026
Python Basics: Exchange Bytes and Detect EOF with socketpair
Practice local stream sockets with Python socketpair, bounded receives, a half-close, and an explicit EOF loop.
October 29, 2026
Python Basics: Detect a CSV Delimiter and Validate Every Row
Constrain Python CSV dialect detection, validate an exact header and row shape, and reject invalid quantities before importing records.
October 29, 2026