| 
							- // Copyright (C) 2014 Yasuhiro Matsumoto <mattn.jp@gmail.com>.
 - //
 - // Use of this source code is governed by an MIT-style
 - // license that can be found in the LICENSE file.
 - 
 - // +build cgo
 - // +build go1.8
 - 
 - package sqlite3
 - 
 - import (
 - 	"database/sql/driver"
 - 
 - 	"context"
 - )
 - 
 - // Ping implement Pinger.
 - func (c *SQLiteConn) Ping(ctx context.Context) error {
 - 	if c.db == nil {
 - 		// must be ErrBadConn for sql to close the database
 - 		return driver.ErrBadConn
 - 	}
 - 	return nil
 - }
 - 
 - // QueryContext implement QueryerContext.
 - func (c *SQLiteConn) QueryContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Rows, error) {
 - 	list := make([]namedValue, len(args))
 - 	for i, nv := range args {
 - 		list[i] = namedValue(nv)
 - 	}
 - 	return c.query(ctx, query, list)
 - }
 - 
 - // ExecContext implement ExecerContext.
 - func (c *SQLiteConn) ExecContext(ctx context.Context, query string, args []driver.NamedValue) (driver.Result, error) {
 - 	list := make([]namedValue, len(args))
 - 	for i, nv := range args {
 - 		list[i] = namedValue(nv)
 - 	}
 - 	return c.exec(ctx, query, list)
 - }
 - 
 - // PrepareContext implement ConnPrepareContext.
 - func (c *SQLiteConn) PrepareContext(ctx context.Context, query string) (driver.Stmt, error) {
 - 	return c.prepare(ctx, query)
 - }
 - 
 - // BeginTx implement ConnBeginTx.
 - func (c *SQLiteConn) BeginTx(ctx context.Context, opts driver.TxOptions) (driver.Tx, error) {
 - 	return c.begin(ctx)
 - }
 - 
 - // QueryContext implement QueryerContext.
 - func (s *SQLiteStmt) QueryContext(ctx context.Context, args []driver.NamedValue) (driver.Rows, error) {
 - 	list := make([]namedValue, len(args))
 - 	for i, nv := range args {
 - 		list[i] = namedValue(nv)
 - 	}
 - 	return s.query(ctx, list)
 - }
 - 
 - // ExecContext implement ExecerContext.
 - func (s *SQLiteStmt) ExecContext(ctx context.Context, args []driver.NamedValue) (driver.Result, error) {
 - 	list := make([]namedValue, len(args))
 - 	for i, nv := range args {
 - 		list[i] = namedValue(nv)
 - 	}
 - 	return s.exec(ctx, list)
 - }
 
 
  |