Processing application data with SQL
The examples in the previous sections show us what we can call procedural SQL processing. We've eschewed any object-oriented design from our problem domain objects. Rather than working with the Blog
and Post
objects, we're working with the data elements that SQLite can process: string, date, float, and integer values. We've used mostly procedural-style programming.
We can see that a series of queries can be done to locate a blog, all posts that are part of the blog, and all tags that are associated with a post associated with a blog. The processing would look like the following code:
query_blog_by_title= """ SELECT * FROM BLOG WHERE TITLE=? """ query_post_by_blog_id= """ SELECT * FROM POST WHERE BLOG_ID=? """ query_tag_by_post_id= """ SELECT TAG.* FROM TAG JOIN ASSOC_POST_TAG ON TAG.ID = ASSOC_POST_TAG.TAG_ID WHERE ASSOC_POST_TAG.POST_ID=? """ for blog in database.execute( query_blog_by_title, ("2013-2014 Travel",) ): print( "Blog", blog ) for post...