database/sql을 사용하여 Go에서 데이터베이스 행을 맵으로 변환하는 방법
데이터베이스 작업 시 데이터를 검색하고 Go 애플리케이션에서 쉽게 조작할 수 있는 형식으로 변환하세요. 일반적인 접근 방식 중 하나는 결과 행을 맵 조각으로 변환하는 것입니다. 그러나 데이터베이스/sql Rows.Scan 함수에는 쿼리에서 반환된 열과 일치하는 특정 수의 매개 변수가 필요합니다.
sqlx를 사용하여 행에서 맵 만들기
데이터베이스/sql 패키지는 행을 맵 조각으로 변환하는 직접적인 지원을 제공하지 않지만 sqlx 패키지를 활용하여 process:
import "github.com/jmoiron/sqlx" db := sqlx.Open("postgres", "user=postgres password=mypassword host=localhost port=5432 dbname=mydb") places := []Place{} err := db.Select(&places, "SELECT * FROM place ORDER BY telcode ASC") if err != nil { fmt.Printf(err) return }
이 예에서는 sqlx를 사용하여 장소 테이블을 쿼리하고 결과를 장소 구조체 조각에 저장합니다. 대신 []Place{}를 []map[string]interface{}로 대체하여 지도 조각을 생성할 수 있습니다.
참고: 가능할 때마다 구조체를 사용하는 것이 좋습니다. 유형 안전성을 제공하고 오류가 발생하기 쉬운 유형 어설션의 필요성을 제거합니다. 그러나 데이터베이스 구조를 모르거나 동적 데이터로 작업해야 하는 경우 유연성을 위해 맵 조각을 사용할 수 있습니다.
위 내용은 Go에서 데이터베이스 행을 맵으로 효율적으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!