[Haskell-beginners] database error simply by using a sting in a variable
Damien Mattei
mattei at oca.eu
Wed Dec 5 16:02:48 UTC 2018
why i'm getting this error?
code:
let name = "'A 20'"
let qry = "select `N° BD` from Coordonnées where Nom = " ++ name
putStrLn qry
bd_rows <- query_ conn qry
putStrLn $ show bd_rows
putStrLn $ show name
forM_ bd_rows $ \(Only a) ->
putStrLn $ Text.unpack a
error:
*Main> :load UpdateSidonie
[1 of 1] Compiling Main ( UpdateSidonie.hs, interpreted )
UpdateSidonie.hs:74:28: error:
• Couldn't match expected type ‘Query’ with actual type ‘[Char]’
• In the second argument of ‘query_’, namely ‘qry’
In a stmt of a 'do' block: bd_rows <- query_ conn qry
In the expression:
do conn <- connect
defaultConnectInfo
{connectHost = "moita", connectUser = "mattei",
connectPassword = "sidonie2", connectDatabase =
"sidonie"}
rows <- query_
conn
"SELECT Nom,distance FROM AngularDistance WHERE
distance > 0.000278"
forM_ rows
$ \ (name, distance)
-> putStrLn $ unpack name ++ " " ++ show (distance ::
Double)
let name = "'A 20'"
....
|
74 | bd_rows <- query_ conn qry
| ^^^
Failed, no modules loaded.
--
Damien.Mattei at unice.fr, Damien.Mattei at oca.eu, UNS / OCA / CNRS
More information about the Beginners
mailing list