# Database/SQL (Go) > Domina el acceso a bases de datos SQL en Go con el paquete database/sql: conexiones, consultas, transacciones, prepared statements y gestión del pool de conexiones. - 22 preguntas de entrevista - Mid-Level - [Preguntas de entrevista: Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista.md) ## 1. ¿Cuál es la diferencia principal entre DB.Query y DB.Exec? **Respuesta** DB.Query se usa para ejecutar consultas SELECT que devuelven filas de datos, mientras que DB.Exec sirve para ejecutar comandos SQL que no devuelven resultados (INSERT, UPDATE, DELETE). Query devuelve un objeto Rows que debe iterarse y cerrarse con rows.Close(), mientras que Exec devuelve un Result que contiene el número de filas afectadas y el último ID insertado. ## 2. ¿Por qué es importante cerrar el objeto Rows después de una consulta? **Respuesta** Cerrar Rows con rows.Close() libera los recursos de la conexión database, permitiendo que la conexión vuelva al pool. Sin cerrarla, las conexiones permanecen ocupadas y el pool puede agotarse, provocando bloqueos. Se recomienda usar defer rows.Close() inmediatamente después de comprobar el error de Query para garantizar el cierre incluso si ocurre un error posterior. ## 3. ¿Qué método debe usarse para recuperar una sola fila de resultados? **Respuesta** DB.QueryRow está diseñado específicamente para recuperar una sola fila y devuelve un objeto Row (en singular). A diferencia de Query, que devuelve Rows y requiere iteración con rows.Next(), QueryRow simplifica el código al permitir un scan directo. El manejo de errores ocurre durante el Scan, donde sql.ErrNoRows indica que no se encontró ninguna fila. ## 19 preguntas más disponibles - ¿Cómo abrir una conexión a una base de datos con database/sql? - ¿Qué devuelve el método rows.Scan()? Regístrate gratis: https://sharpskill.dev/es/login ## Otros temas de entrevista Go - [Fundamentos de Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-basics.md): 25 preguntas, Junior - [Estructuras de datos en Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-data-structures.md): 20 preguntas, Junior - [Interfaces en Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-interfaces.md): 18 preguntas, Junior - [Manejo de errores](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/error-handling.md): 20 preguntas, Junior - [Goroutines básicas](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/goroutines-basics.md): 20 preguntas, Junior - [Channels](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/channels.md): 22 preguntas, Junior - [Go Modules](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-modules.md): 18 preguntas, Mid-Level - [Servidor HTTP](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/http-server.md): 24 preguntas, Mid-Level - [Cliente HTTP](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/http-client.md): 18 preguntas, Mid-Level - [Codificación JSON](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/json-encoding.md): 20 preguntas, Mid-Level - [Paquete context](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/context-package.md): 20 preguntas, Mid-Level - [Testing](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/testing.md): 22 preguntas, Mid-Level - [Patrones de concurrencia](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/concurrency-patterns.md): 24 preguntas, Mid-Level - [Primitivas de sincronización](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/sync-primitives.md): 22 preguntas, Mid-Level - [Frameworks web de Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-web-frameworks.md): 20 preguntas, Mid-Level - [Diseño de API REST](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/rest-api-design.md): 20 preguntas, Mid-Level - [gRPC](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/grpc.md): 22 preguntas, Mid-Level - [Reflection](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/reflection.md): 20 preguntas, Senior - [Gestión de memoria](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/memory-management.md): 24 preguntas, Senior - [Optimización del rendimiento](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/performance-optimization.md): 22 preguntas, Senior - [Generics](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/generics.md): 20 preguntas, Senior - [Go Design Patterns](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/design-patterns.md): 24 preguntas, Senior - [Microservices](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/microservices.md): 24 preguntas, Senior - [Seguridad y autenticación](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/security-authentication.md): 24 preguntas, Senior - [Docker & Containerization](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/docker-containerization.md): 20 preguntas, Senior - [Kubernetes Basics](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/kubernetes-basics.md): 22 preguntas, Senior - [Go Avanzado](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/advanced-go.md): 20 preguntas, Senior - [Desarrollo de CLI](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/cli-development.md): 20 preguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/es/technologies/go/preguntas-entrevista/database-sql