Haskell Sqlite3 вызов - PullRequest
       3

Haskell Sqlite3 вызов

0 голосов
/ 27 августа 2018

В реальном мире на Haskell это пример модуля dbase HDBC:

run conn "INSERT INTO test VALUES (?, ?)" [toSql 0, toSql "zero"]

Вопрос: ЗНАЧЕНИЯ (?,?) Кажутся мне плохой практикой, но если я назову столбцы:

run conn "INSERT INTO test VALUES (id, desc)" [toSql 0, toSql "zero"]

Я получаю ошибку:

*** Exception: SqlError {seState = "", seNativeError = 1, seErrorMsg = "prepare 34: INSERT INTO test VALUES (id,desc): no such column: id"}

Странно, поскольку столбцы на самом деле называются id и desc. Апострофы возможно?

run conn "INSERT INTO test VALUES ('id', 'desc')" [toSql 0, toSql "zero"]

Но в результате получается:

*** Exception: SqlError {seState = "", seNativeError = -1, seErrorMsg = "In HDBC execute, received [SqlInt64 3,SqlString \"Newco\"] but expected 0 args."}

Но я действительно ненавижу ставить 20 знаков вопроса. Можете ли вы помочь мне?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...