Skip to content

Commit 5b78823

Browse files
committed
ScanColumn dropped.
1 parent 1764a57 commit 5b78823

2 files changed

Lines changed: 0 additions & 65 deletions

File tree

driver/driver.go

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -653,14 +653,12 @@ type rows struct {
653653
names []string
654654
types []string
655655
scans []scantype
656-
dest []driver.Value
657656
}
658657

659658
var (
660659
// Ensure these interfaces are implemented:
661660
_ driver.RowsColumnTypeDatabaseTypeName = &rows{}
662661
_ driver.RowsColumnTypeNullable = &rows{}
663-
// _ driver.RowsColumnScanner = &rows{}
664662
)
665663

666664
func (r *rows) Close() error {
@@ -780,7 +778,6 @@ func (r *rows) ColumnTypeScanType(index int) (typ reflect.Type) {
780778
}
781779

782780
func (r *rows) Next(dest []driver.Value) error {
783-
r.dest = nil
784781
c := r.Stmt.Conn()
785782
if old := c.SetInterrupt(r.ctx); old != r.ctx {
786783
defer c.SetInterrupt(old)
@@ -830,33 +827,5 @@ func (r *rows) Next(dest []driver.Value) error {
830827
}
831828
}
832829
}
833-
r.dest = dest
834830
return nil
835831
}
836-
837-
func (r *rows) ScanColumn(dest any, index int) (err error) {
838-
// notest // Go 1.26
839-
var tm *time.Time
840-
var ok *bool
841-
switch d := dest.(type) {
842-
case *time.Time:
843-
tm = d
844-
case *sql.NullTime:
845-
tm = &d.Time
846-
ok = &d.Valid
847-
case *sql.Null[time.Time]:
848-
tm = &d.V
849-
ok = &d.Valid
850-
default:
851-
return driver.ErrSkip
852-
}
853-
value := r.dest[index]
854-
*tm, err = r.tmRead.Decode(value)
855-
if ok != nil {
856-
*ok = err == nil
857-
if value == nil {
858-
return nil
859-
}
860-
}
861-
return err
862-
}

driver/driver_test.go

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import (
88
"math"
99
"net/url"
1010
"reflect"
11-
"strings"
1211
"testing"
1312
"time"
1413

@@ -521,39 +520,6 @@ func Test_ColumnType_ScanType(t *testing.T) {
521520
}
522521
}
523522

524-
func Test_rows_ScanColumn(t *testing.T) {
525-
t.Parallel()
526-
dsn := memdb.TestDB(t)
527-
528-
db, err := Open(dsn)
529-
if err != nil {
530-
t.Fatal(err)
531-
}
532-
defer db.Close()
533-
534-
var tm time.Time
535-
err = db.QueryRow(`SELECT NULL`).Scan(&tm)
536-
if err == nil {
537-
t.Error("want error")
538-
}
539-
// Go 1.26
540-
err = db.QueryRow(`SELECT datetime()`).Scan(&tm)
541-
if err != nil && !strings.HasPrefix(err.Error(), "sql: Scan error") {
542-
t.Error(err)
543-
}
544-
545-
var nt sql.NullTime
546-
err = db.QueryRow(`SELECT NULL`).Scan(&nt)
547-
if err != nil {
548-
t.Error(err)
549-
}
550-
// Go 1.26
551-
err = db.QueryRow(`SELECT datetime()`).Scan(&nt)
552-
if err != nil && !strings.HasPrefix(err.Error(), "sql: Scan error") {
553-
t.Error(err)
554-
}
555-
}
556-
557523
func Benchmark_loop(b *testing.B) {
558524
db, err := Open(":memory:")
559525
if err != nil {

0 commit comments

Comments
 (0)