haskell-relational-record/relational-join-HDBC-pgTest/pgTest/PgTestDataSource.hs
Kei Hibino 7e98380848 Move sample codes into another package.
--HG--
rename : schema-th/pgTest/PgTest.hs => relational-join-HDBC-pgTest/pgTest/PgTest.hs
rename : schema-th/pgTest/PgTestDataSource.hs => relational-join-HDBC-pgTest/pgTest/PgTestDataSource.hs
rename : schema-th/pgTest/runCreate.sh => relational-join-HDBC-pgTest/pgTest/runCreate.sh
rename : schema-th/pgTest/runDrop.sh => relational-join-HDBC-pgTest/pgTest/runDrop.sh
rename : schema-th/sample/1/Group.hs => relational-join-HDBC-pgTest/sample/1/Group.hs
rename : schema-th/sample/1/Membership.hs => relational-join-HDBC-pgTest/sample/1/Membership.hs
rename : schema-th/sample/1/README => relational-join-HDBC-pgTest/sample/1/README
rename : schema-th/sample/1/User.hs => relational-join-HDBC-pgTest/sample/1/User.hs
rename : schema-th/sample/1/create.sh => relational-join-HDBC-pgTest/sample/1/create.sh
rename : schema-th/sample/1/drop.sh => relational-join-HDBC-pgTest/sample/1/drop.sh
rename : schema-th/sample/1/querySample.hs => relational-join-HDBC-pgTest/sample/1/querySample.hs
2013-05-13 19:24:31 +09:00

22 lines
647 B
Haskell

module PgTestDataSource (
connect, defineTable
) where
import Language.Haskell.TH (Q, Dec, TypeQ)
import Database.HDBC.PostgreSQL (connectPostgreSQL, Connection)
import Database.HDBC.Schema.PostgreSQL (driverPostgreSQL)
import Database.HDBC.Schema.Driver (typeMap)
import Language.Haskell.TH.Name.CamelCase (ConName)
import Database.HDBC.TH (defineTableFromDB)
connect :: IO Connection
connect = connectPostgreSQL "dbname=testdb"
defineTable :: [(String, TypeQ)] -> String -> String -> [ConName] -> Q [Dec]
defineTable tmap scm tbl derives = do
defineTableFromDB
connect
(driverPostgreSQL { typeMap = tmap })
scm tbl derives