Guest User

Untitled

a guest
Dec 10th, 2018
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1. func obtenerContactos() ([]Contacto, error) {
  2. contactos := []Contacto{}
  3. db, err := obtenerBaseDeDatos()
  4. if err != nil {
  5. return nil, err
  6. }
  7. defer db.Close()
  8. filas, err := db.Query("SELECT id, nombre, direccion, correo_electronico FROM agenda")
  9.  
  10. if err != nil {
  11. return nil, err
  12. }
  13. // Si llegamos aquí, significa que no ocurrió ningún error
  14. defer filas.Close()
  15.  
  16. // Aquí vamos a "mapear" lo que traiga la consulta en el while de más abajo
  17. var c Contacto
  18.  
  19. // Recorrer todas las filas, en un "while"
  20. for filas.Next() {
  21. err = filas.Scan(&c.Id, &c.Nombre, &c.Direccion, &c.CorreoElectronico)
  22. // Al escanear puede haber un error
  23. if err != nil {
  24. return nil, err
  25. }
  26. // Y si no, entonces agregamos lo leído al arreglo
  27. contactos = append(contactos, c)
  28. }
  29. // Vacío o no, regresamos el arreglo de contactos
  30. return contactos, nil
  31. }
Add Comment
Please, Sign In to add comment