Merge pull request #160 from capoferro/patch-1

Catch missing arguments for Query()
This commit is contained in:
mattn 2014-11-30 20:35:28 +09:00
commit beeda4c311
1 changed files with 5 additions and 1 deletions

View File

@ -60,6 +60,7 @@ import (
"database/sql"
"database/sql/driver"
"errors"
"fmt"
"io"
"runtime"
"strings"
@ -174,7 +175,7 @@ func (c *SQLiteConn) Exec(query string, args []driver.Value) (driver.Result, err
if s.(*SQLiteStmt).s != nil {
na := s.NumInput()
if len(args) < na {
return nil, errors.New("args is not enough to execute query")
return nil, fmt.Errorf("Not enough args to execute query. Expected %d, got %d.", na, len(args))
}
res, err = s.Exec(args[:na])
if err != nil && err != driver.ErrSkip {
@ -201,6 +202,9 @@ func (c *SQLiteConn) Query(query string, args []driver.Value) (driver.Rows, erro
}
s.(*SQLiteStmt).cls = true
na := s.NumInput()
if len(args) < na {
return nil, fmt.Errorf("Not enough args to execute query. Expected %d, got %d.", na, len(args))
}
rows, err := s.Query(args[:na])
if err != nil && err != driver.ErrSkip {
s.Close()