package requette import ( "api_serveurless_go/bd" "database/sql" "log" ) type Projet struct { Id int `json:"id"` Name string `json:"name"` ShortDescription string `json:"shortdescription"` } func GetAllProjets() []Projet { db := bd.GetDB() stmt, err := db.Prepare("SELECT * FROM projet") if err != nil { log.Fatal(err) } row, err := stmt.Query() defer stmt.Close() if err != nil { log.Fatal(err) } return hydrateProjets(row) } func GetProjetByID(id int) Projet { db := bd.GetDB() stmt, err := db.Prepare("SELECT * FROM projet WHERE id = ?") if err != nil { log.Fatal(err) } row := stmt.QueryRow(id) defer stmt.Close() return hydrateProjet(row) } func hydrateProjet(row *sql.Row) Projet { var projet Projet err := row.Scan(&projet.Id, &projet.Name, &projet.ShortDescription) if err != nil { log.Fatal(err) } return projet } func hydrateProjets(rows *sql.Rows) []Projet { var projets []Projet for rows.Next() { var projet Projet err := rows.Scan(&projet.Id, &projet.Name, &projet.ShortDescription) if err != nil { log.Fatal(err) } projets = append(projets, projet) } return projets }