mysql-haskell-nem

Adds a interface like mysql-simple to mysql-haskell. https://github.com/lorenzo/mysql-haskell-nem#readme

Latest on Hackage:0.1.0.0

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD3 licensed by José Lorenzo Rodríguez , Bryan O'Sullivan , Paul Rouse
Maintained by jose.zap@gmail.com

mysql-haskell-nem

Provides a simpler interface for retrieving results when using the mysql-haskell package.

Guide

The Database.MySQL.Base and Database.MySQL.Nem modules provides everything you need to start making queries:

{-# LANGUAGE OverloadedStrings #-}

module Main where

import Database.MySQL.Base
import Database.MySQL.Base.Nem
import Data.Text (unpack)
import qualified System.IO.Streams as Streams

main :: IO () 
main = do
    conn <- connect
        defaultConnectInfo {ciUser = "username", ciPassword = "password", ciDatabase = "dbname"}

    results <- queryResults conn "SELECT email, name FROM users" >>=
    _ <-
        Streams.mapM_
            (\(email, name) -> print $ (Text.unpack email) ++ ":" ++ (name :: String) ) results >>=
        Streams.toList

It's recommended to use prepared statement to improve query speed:

    ...
    s <- prepareStmt conn "SELECT * FROM some_table where person_age > ?"
    ...
    results <- queryStmtResutls s [MySQLInt32U 18]
    ...
comments powered byDisqus