Postgres
Postgresql-simple 是一个用于与 PostgreSQL 后端数据库通信的中级 Haskell 库。它使用起来非常简单,并提供了一种类型安全的 API,用于读/写 DB。
运行简单查询非常简单:
{-# LANGUAGE OverloadedStrings #-}
import Database.PostgreSQL.Simple
main::IO ()
main = do
-- Connect using libpq strings
conn <- connectPostgreSQL "host='my.dbhost' port=5432 user=bob pass=bob"
[Only i] <- query_ conn "select 2 + 2" -- execute with no parameter substitution
print i
参数替换
PostreSQL-Simple 支持使用 query
进行安全参数化查询的参数替换:
main::IO ()
main = do
-- Connect using libpq strings
conn <- connectPostgreSQL "host='my.dbhost' port=5432 user=bob pass=bob"
[Only i] <- query conn "select ? + ?" [1, 1]
print i
执行插入或更新
你可以使用 execute
运行插入/更新 SQL 查询:
main::IO ()
main = do
-- Connect using libpq strings
conn <- connectPostgreSQL "host='my.dbhost' port=5432 user=bob pass=bob"
execute conn "insert into people (name, age) values (?, ?)" ["Alex", 31]