Ich schreibe einen kleinen Web-Service in Go, die Postgres durch die pq driver package verwendet.Gehen Sie mit Postgres: LastInsertedId für nicht sequentielle Bezeichner
Ich benutze einen UUID als Identifikator für meine Modelle, damit LastInsertId nicht funktioniert.
So bin ich denke, ich so etwas wie dies könnte:
var id string
res, err := session.Exec("INSERT INTO todos (text, list_id) VALUES ($1, $2) RETURNING todo_id", text, listId).Scan(&id)
Scan
scheint gut mit Exec
zu spielen.
Wie kann ich die Uuid aus meiner neuen todo Zeile zurückgeben?
las ich an anderer Stelle, dass Exec wurde für alle Insert/Update-Transaktionen empfohlen, aber diese eigentlich scheint zu arbeiten, also danke. – marsrover
@marsrover yeah normalerweise würden Sie Exec verwenden, aber postgres plus 'RETURNING' ist gerade speziell. Es freut mich, dass ich helfen konnte. – jcbwlkr