diff options
| author | Shulhan <ms@kilabit.info> | 2026-04-04 02:30:09 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2026-04-04 02:32:01 +0700 |
| commit | fd54f7be5969204b6845c4aa7dd332d31c96c59f (patch) | |
| tree | f24e06c0aa98ebe6d1c61e152b0f4d8cf8c79ec3 /lib/uuidv7/uuidv7.go | |
| parent | f18f08e554ed9f93f31641d974448923099ac892 (diff) | |
| download | pakakeh.go-fd54f7be5969204b6845c4aa7dd332d31c96c59f.tar.xz | |
lib/uuidv7: detect nil value on Scan
Column with NULL value will returns no error but zero UUID.
Diffstat (limited to 'lib/uuidv7/uuidv7.go')
| -rw-r--r-- | lib/uuidv7/uuidv7.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/uuidv7/uuidv7.go b/lib/uuidv7/uuidv7.go index e35e684b..21277e55 100644 --- a/lib/uuidv7/uuidv7.go +++ b/lib/uuidv7/uuidv7.go @@ -165,6 +165,7 @@ func (id *UUIDv7) UnmarshalText(data []byte) (err error) { // Scan scans the raw database value into id. // This method implement [database/sql.Scanner] interface. +// Column with NULL value will returns no error but zero UUID. func (id *UUIDv7) Scan(src any) (err error) { switch v := src.(type) { case []byte: @@ -172,6 +173,8 @@ func (id *UUIDv7) Scan(src any) (err error) { if err != nil { return err } + case nil: + return nil default: return fmt.Errorf(`uuidv7: Scan: invalid type %T`, src) } |
