@@ -326,26 +326,29 @@ func TestSelectWithVarchar(t *testing.T) {
326326 defer conn .Close ()
327327 defer logger .StopLogging ()
328328
329- t .Run ("scan into interface{} " , func (t * testing.T ) {
329+ t .Run ("scan into string " , func (t * testing.T ) {
330330 type testStruct struct {
331- sql string
332- val string
331+ sql string
332+ args []interface {}
333+ val string
333334 }
334335
335336 longstr := strings .Repeat ("x" , 10000 )
336337
337338 values := []testStruct {
338- {"'abc'" , "abc" },
339- {"N'abc'" , "abc" },
340- {"cast(N'abc' as nvarchar(max))" , "abc" },
341- {"cast('abc' as text)" , "abc" },
342- {"cast(N'abc' as ntext)" , "abc" },
343- {"cast('abc' as char(3))" , "abc" },
344- {"cast('abc' as varchar(3))" , "abc" },
345- {fmt .Sprintf ("cast(N'%s' as nvarchar(max))" , longstr ), longstr },
346- {"cast(cast('abc' as varchar(3)) as sql_variant)" , "abc" },
347- {"cast(cast('abc' as char(3)) as sql_variant)" , "abc" },
348- {"cast(N'abc' as sql_variant)" , "abc" },
339+ {"'abc'" , []interface {}{}, "abc" },
340+ {"N'abc'" , []interface {}{}, "abc" },
341+ {"cast(N'abc' as nvarchar(max))" , []interface {}{}, "abc" },
342+ {"cast('abc' as text)" , []interface {}{}, "abc" },
343+ {"cast(N'abc' as ntext)" , []interface {}{}, "abc" },
344+ {"cast('abc' as char(3))" , []interface {}{}, "abc" },
345+ {"cast('abc' as varchar(3))" , []interface {}{}, "abc" },
346+ {fmt .Sprintf ("cast(N'%s' as nvarchar(max))" , longstr ), []interface {}{}, longstr },
347+ {"cast(cast('abc' as varchar(3)) as sql_variant)" , []interface {}{}, "abc" },
348+ {"cast(cast('abc' as char(3)) as sql_variant)" , []interface {}{}, "abc" },
349+ {"cast(N'abc' as sql_variant)" , []interface {}{}, "abc" },
350+ {"$1" , []interface {}{"abc" }, "abc" },
351+ {"$1" , []interface {}{longstr }, longstr },
349352 }
350353
351354 for _ , test := range values {
@@ -357,7 +360,7 @@ func TestSelectWithVarchar(t *testing.T) {
357360 }
358361 defer stmt .Close ()
359362
360- row := stmt .QueryRow ()
363+ row := stmt .QueryRow (test . args ... )
361364 var retval string
362365 err = row .Scan (& retval )
363366 if err != nil {
0 commit comments