Я работаю над настройкой базы данных, создавая пользовательский вариант Upsert as Postgresql, по-видимому, пока этого не имеет. Во всяком случае, мои параметры не играют хорошо.
Я использую Martini.
Этот код:
func CreateBook(ren render.Render, r *http.Request, db *sql.DB) {
_, err := db.Query("INSERT INTO books (title, first, last, class) SELECT $1, $2, $3, $4 WHERE NOT EXISTS (SELECT * FROM books WHERE title = $1)",
r.FormValue("title"),
r.FormValue("first"),
r.FormValue("last"),
r.FormValue("class"))
PanicIf(err)
Выдает эту ошибку:
pq: inconsistent types deduced for parameter $1
Я довольно уверен, что это какой-то вопрос типажей со вторым $ 1, но ни один из рациональных решений не кажется, имеет смысл.
Его глупый вопрос, надеюсь, легкий ответ, но я не смог найти ответы нигде.
Вы готовы переписать с пятым параметром вместо повторного '$ 1 '? –
Конечно, но цель состоит в том, чтобы попытаться проверить, что вход html не представляет собой дублируемую запись (отсюда и название). – Sam