this repo has no description
at main 23 lines 669 B view raw
1(import sqlite3) 2 3(defmacro querify [schema-file] 4 ~(defn ,(symbol table-name) [conn] 5 (sqlite3/eval conn ,(string/format "select * from %s;" table-name))) 6 7 (def conn (sqlite3/open ":memory:")) 8 (sqlite3/eval conn (string (slurp schema-file))) 9 (def tables 10 (->> (sqlite3/eval conn "select name from sqlite_schema where type = 'table';") 11 (map |($ :name)) 12 (filter |(not (string/has-prefix? "sqlite_" $))))) 13 (sqlite3/close conn) 14 15 ~(upscope 16 ,;(map table-definition tables))) 17 18(querify "schema.sql") 19 20(defn main [&] 21 (def conn (sqlite3/open "db.sqlite")) 22 (pp (people conn)) 23 (pp (grudges conn)))