Use integers for schemas in insert

This commit is contained in:
Joe Nelson
2014-08-14 10:03:07 -07:00
parent 09da9e7e94
commit d25da99f10
3 changed files with 8 additions and 3 deletions
+1 -1
View File
@@ -93,7 +93,7 @@ app config req respond = do
([table], "POST") ->
jsonBodyAction req (\row ->
responseLBS status200 [jsonContentType] <$> (
insert (pack $ show ver) table row conn))
insert ver table row conn))
(_, _) ->
return $ responseLBS status404 [] ""
+2 -2
View File
@@ -104,9 +104,9 @@ jsonArrayRows :: QuotedSql -> QuotedSql
jsonArrayRows q =
("array_to_json(array_agg(row_to_json(t))) from (", []) <> q <> (") t", [])
insert :: Text -> Text -> SqlRow -> Connection -> IO BL.ByteString
insert :: Int -> Text -> SqlRow -> Connection -> IO BL.ByteString
insert schema table row conn = do
query <- populateSql conn ("insert into %I.%I ("++colIds++")", map toSql $ schema:table:cols)
query <- populateSql conn ("insert into %I.%I ("++colIds++")", map toSql $ (show schema):table:cols)
stmt <- prepare conn (query ++ " values ("++phs++") returning *")
_ <- execute stmt values
commit conn
+5
View File
@@ -1,5 +1,8 @@
-- {{{ Imports
{-# LANGUAGE OverloadedStrings #-}
module PgStructure where
import Data.Functor ( (<$>) )
@@ -18,6 +21,8 @@ import Database.HDBC.PostgreSQL
import Data.Aeson ((.=))
-- }}}
data Table = Table {
tableSchema :: String
, tableName :: String