db 의 null or string 을 변수로 받기 > IT 기술백서

IT 기술백서

직접 알아내거나 검색하기 귀찮아서 모아 둔 것

Go lang | db 의 null or string 을 변수로 받기

본문

[code]

query := "SELECT name FROM student WHERE id=?"

db := g.GetDB()


row := db.QueryRow(query, id)


var name string

err := row.Scan(&id, &name)

[/code]

 

위와 같은 코드가 있다고 하자.  여기서 name 필드가 문자열이고 값이 있다면 아무런 에러가 안 난다.

하지만 만약 name 필드에 값이 없고 null 이라면 null 값을 string 으로 변환할 수 없다는 에러가 난다.

이때는 "database/sql" 의 NullString 을 사용해야 한다.

수정된 코드는 아래와 같다.

 

[code]

query := "SELECT name FROM student WHERE id=?"

db := g.GetDB()


row := db.QueryRow(query, id)


var fName sql.NullString

err := row.Scan(&id, &fname)


name := fname.String

[/code]

댓글 0개

등록된 댓글이 없습니다.

Menu