Skip to content

Commit 970f888

Browse files
committed
return sql.NullTime if it available
1 parent 73dc904 commit 970f888

File tree

4 files changed

+18
-8
lines changed

4 files changed

+18
-8
lines changed

driver_test.go

+7-7
Original file line numberDiff line numberDiff line change
@@ -2758,13 +2758,13 @@ func TestRowsColumnTypes(t *testing.T) {
27582758
nfNULL := sql.NullFloat64{Float64: 0.0, Valid: false}
27592759
nf0 := sql.NullFloat64{Float64: 0.0, Valid: true}
27602760
nf1337 := sql.NullFloat64{Float64: 13.37, Valid: true}
2761-
nt0 := NullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 0, time.UTC), Valid: true}
2762-
nt1 := NullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 100000000, time.UTC), Valid: true}
2763-
nt2 := NullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 110000000, time.UTC), Valid: true}
2764-
nt6 := NullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 111111000, time.UTC), Valid: true}
2765-
nd1 := NullTime{Time: time.Date(2006, 01, 02, 0, 0, 0, 0, time.UTC), Valid: true}
2766-
nd2 := NullTime{Time: time.Date(2006, 03, 04, 0, 0, 0, 0, time.UTC), Valid: true}
2767-
ndNULL := NullTime{Time: time.Time{}, Valid: false}
2761+
nt0 := nullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 0, time.UTC), Valid: true}
2762+
nt1 := nullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 100000000, time.UTC), Valid: true}
2763+
nt2 := nullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 110000000, time.UTC), Valid: true}
2764+
nt6 := nullTime{Time: time.Date(2006, 01, 02, 15, 04, 05, 111111000, time.UTC), Valid: true}
2765+
nd1 := nullTime{Time: time.Date(2006, 01, 02, 0, 0, 0, 0, time.UTC), Valid: true}
2766+
nd2 := nullTime{Time: time.Date(2006, 03, 04, 0, 0, 0, 0, time.UTC), Valid: true}
2767+
ndNULL := nullTime{Time: time.Time{}, Valid: false}
27682768
rbNULL := sql.RawBytes(nil)
27692769
rb0 := sql.RawBytes("0")
27702770
rb42 := sql.RawBytes("42")

fields.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ var (
106106
scanTypeInt64 = reflect.TypeOf(int64(0))
107107
scanTypeNullFloat = reflect.TypeOf(sql.NullFloat64{})
108108
scanTypeNullInt = reflect.TypeOf(sql.NullInt64{})
109-
scanTypeNullTime = reflect.TypeOf(NullTime{})
109+
scanTypeNullTime = reflect.TypeOf(nullTime{})
110110
scanTypeUint8 = reflect.TypeOf(uint8(0))
111111
scanTypeUint16 = reflect.TypeOf(uint16(0))
112112
scanTypeUint32 = reflect.TypeOf(uint32(0))

nulltime_go113.go

+5
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,8 @@ import (
2929
//
3030
// This NullTime implementation is not driver-specific
3131
type NullTime sql.NullTime
32+
33+
// for internal use.
34+
// the mysql package uses sql.NullTime if it is available.
35+
// if not, the package uses mysql.NullTime.
36+
type nullTime = sql.NullTime // sql.NullTime is available

nulltime_legacy.go

+5
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,8 @@ type NullTime struct {
3232
Time time.Time
3333
Valid bool // Valid is true if Time is not NULL
3434
}
35+
36+
// for internal use.
37+
// the mysql package uses sql.NullTime if it is available.
38+
// if not, the package uses mysql.NullTime.
39+
type nullTime = NullTime // sql.NullTime is not available

0 commit comments

Comments
 (0)