Merge branch 'master' into same-type-extends

This commit is contained in:
Lunny Xiao 2019-06-22 15:02:26 +08:00 committed by GitHub
commit 7842419ba2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
59 changed files with 128 additions and 116 deletions

View File

@ -35,8 +35,8 @@ jobs:
- checkout - checkout
- run: go get -t -d -v ./... - run: go get -t -d -v ./...
- run: go get -u github.com/go-xorm/core - run: go get -u xorm.io/core
- run: go get -u github.com/go-xorm/builder - run: go get -u xorm.io/builder
- run: GO111MODULE=off go build -v - run: GO111MODULE=off go build -v
- run: GO111MODULE=on go build -v - run: GO111MODULE=on go build -v

View File

@ -59,8 +59,8 @@ pipeline:
image: golang:${GO_VERSION} image: golang:${GO_VERSION}
commands: commands:
- go get -t -d -v ./... - go get -t -d -v ./...
- go get -u github.com/go-xorm/core - go get -u xorm.io/core
- go get -u github.com/go-xorm/builder - go get -u xorm.io/builder
- go build -v - go build -v
when: when:
event: [ push, pull_request ] event: [ push, pull_request ]

View File

@ -28,7 +28,7 @@ Xorm is a simple and powerful ORM for Go.
* Optimistic Locking support * Optimistic Locking support
* SQL Builder support via [github.com/go-xorm/builder](https://github.com/go-xorm/builder) * SQL Builder support via [xorm.io/builder](https://xorm.io/builder)
* Automatical Read/Write seperatelly * Automatical Read/Write seperatelly

View File

@ -362,7 +362,7 @@ if _, err := session.Exec("delete from userinfo where username = ?", user2.Usern
return session.Commit() return session.Commit()
``` ```
* 事的简写方法 * 事的简写方法
```Go ```Go
res, err := engine.Transaction(func(session *xorm.Session) (interface{}, error) { res, err := engine.Transaction(func(session *xorm.Session) (interface{}, error) {

View File

@ -10,7 +10,7 @@ import (
"sync" "sync"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
// LRUCacher implments cache object facilities // LRUCacher implments cache object facilities

View File

@ -7,7 +7,7 @@ package xorm
import ( import (
"testing" "testing"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -7,7 +7,7 @@ package xorm
import ( import (
"sync" "sync"
"github.com/go-xorm/core" "xorm.io/core"
) )
var _ core.CacheStore = NewMemoryStore() var _ core.CacheStore = NewMemoryStore()

View File

@ -11,7 +11,7 @@ import (
"strconv" "strconv"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
var ( var (

View File

@ -8,7 +8,7 @@ import (
"reflect" "reflect"
"testing" "testing"
"github.com/go-xorm/core" "xorm.io/core"
) )
func TestParseMSSQL(t *testing.T) { func TestParseMSSQL(t *testing.T) {

View File

@ -13,7 +13,7 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
var ( var (

View File

@ -11,7 +11,7 @@ import (
"strconv" "strconv"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
var ( var (

View File

@ -11,7 +11,7 @@ import (
"strconv" "strconv"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
// from http://www.postgresql.org/docs/current/static/sql-keywords-appendix.html // from http://www.postgresql.org/docs/current/static/sql-keywords-appendix.html

View File

@ -4,7 +4,7 @@ import (
"reflect" "reflect"
"testing" "testing"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/jackc/pgx/stdlib" "github.com/jackc/pgx/stdlib"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -11,7 +11,7 @@ import (
"regexp" "regexp"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
var ( var (

View File

@ -20,8 +20,8 @@ import (
"sync" "sync"
"time" "time"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Engine is the major struct of xorm, it means a database manager. // Engine is the major struct of xorm, it means a database manager.
@ -125,6 +125,7 @@ func (engine *Engine) Logger() core.ILogger {
// SetLogger set the new logger // SetLogger set the new logger
func (engine *Engine) SetLogger(logger core.ILogger) { func (engine *Engine) SetLogger(logger core.ILogger) {
engine.logger = logger engine.logger = logger
engine.showSQL = logger.IsShowSQL()
engine.dialect.SetLogger(logger) engine.dialect.SetLogger(logger)
} }
@ -1363,31 +1364,31 @@ func (engine *Engine) DropIndexes(bean interface{}) error {
} }
// Exec raw sql // Exec raw sql
func (engine *Engine) Exec(sqlorArgs ...interface{}) (sql.Result, error) { func (engine *Engine) Exec(sqlOrArgs ...interface{}) (sql.Result, error) {
session := engine.NewSession() session := engine.NewSession()
defer session.Close() defer session.Close()
return session.Exec(sqlorArgs...) return session.Exec(sqlOrArgs...)
} }
// Query a raw sql and return records as []map[string][]byte // Query a raw sql and return records as []map[string][]byte
func (engine *Engine) Query(sqlorArgs ...interface{}) (resultsSlice []map[string][]byte, err error) { func (engine *Engine) Query(sqlOrArgs ...interface{}) (resultsSlice []map[string][]byte, err error) {
session := engine.NewSession() session := engine.NewSession()
defer session.Close() defer session.Close()
return session.Query(sqlorArgs...) return session.Query(sqlOrArgs...)
} }
// QueryString runs a raw sql and return records as []map[string]string // QueryString runs a raw sql and return records as []map[string]string
func (engine *Engine) QueryString(sqlorArgs ...interface{}) ([]map[string]string, error) { func (engine *Engine) QueryString(sqlOrArgs ...interface{}) ([]map[string]string, error) {
session := engine.NewSession() session := engine.NewSession()
defer session.Close() defer session.Close()
return session.QueryString(sqlorArgs...) return session.QueryString(sqlOrArgs...)
} }
// QueryInterface runs a raw sql and return records as []map[string]interface{} // QueryInterface runs a raw sql and return records as []map[string]interface{}
func (engine *Engine) QueryInterface(sqlorArgs ...interface{}) ([]map[string]interface{}, error) { func (engine *Engine) QueryInterface(sqlOrArgs ...interface{}) ([]map[string]interface{}, error) {
session := engine.NewSession() session := engine.NewSession()
defer session.Close() defer session.Close()
return session.QueryInterface(sqlorArgs...) return session.QueryInterface(sqlOrArgs...)
} }
// Insert one or more records // Insert one or more records

View File

@ -11,8 +11,8 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
func (engine *Engine) buildConds(table *core.Table, bean interface{}, func (engine *Engine) buildConds(table *core.Table, bean interface{},

View File

@ -8,7 +8,7 @@ import (
"context" "context"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
// EngineGroup defines an engine group // EngineGroup defines an engine group

View File

@ -9,7 +9,7 @@ import (
"reflect" "reflect"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
// tbNameWithSchema will automatically add schema prefix on table name // tbNameWithSchema will automatically add schema prefix on table name

5
go.mod
View File

@ -6,9 +6,6 @@ require (
github.com/davecgh/go-spew v1.1.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect
github.com/denisenkom/go-mssqldb v0.0.0-20190121005146-b04fd42d9952 github.com/denisenkom/go-mssqldb v0.0.0-20190121005146-b04fd42d9952
github.com/go-sql-driver/mysql v1.4.1 github.com/go-sql-driver/mysql v1.4.1
github.com/go-xorm/builder v0.3.3
github.com/go-xorm/core v0.6.2
github.com/go-xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a // indirect
github.com/google/go-cmp v0.2.0 // indirect github.com/google/go-cmp v0.2.0 // indirect
github.com/jackc/fake v0.0.0-20150926172116-812a484cc733 // indirect github.com/jackc/fake v0.0.0-20150926172116-812a484cc733 // indirect
github.com/jackc/pgx v3.3.0+incompatible github.com/jackc/pgx v3.3.0+incompatible
@ -22,4 +19,6 @@ require (
github.com/ziutek/mymysql v1.5.4 github.com/ziutek/mymysql v1.5.4
golang.org/x/crypto v0.0.0-20190122013713-64072686203f // indirect golang.org/x/crypto v0.0.0-20190122013713-64072686203f // indirect
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 // indirect gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 // indirect
xorm.io/builder v0.3.5
xorm.io/core v0.6.3
) )

10
go.sum
View File

@ -10,10 +10,6 @@ github.com/denisenkom/go-mssqldb v0.0.0-20190121005146-b04fd42d9952 h1:b5OnbZD49
github.com/denisenkom/go-mssqldb v0.0.0-20190121005146-b04fd42d9952/go.mod h1:xN/JuLBIz4bjkxNmByTiV1IbhfnYb6oo99phBn4Eqhc= github.com/denisenkom/go-mssqldb v0.0.0-20190121005146-b04fd42d9952/go.mod h1:xN/JuLBIz4bjkxNmByTiV1IbhfnYb6oo99phBn4Eqhc=
github.com/go-sql-driver/mysql v1.4.1 h1:g24URVg0OFbNUTx9qqY1IRZ9D9z3iPyi5zKhQZpNwpA= github.com/go-sql-driver/mysql v1.4.1 h1:g24URVg0OFbNUTx9qqY1IRZ9D9z3iPyi5zKhQZpNwpA=
github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
github.com/go-xorm/builder v0.3.3 h1:v8grgrwOGv/iHXIEhIvOwHZIPLrpxRKSX8yWSMLFn/4=
github.com/go-xorm/builder v0.3.3/go.mod h1:v8mE3MFBgtL+RGFNfUnAMUqqfk/Y4W5KuwCFQIEpQLk=
github.com/go-xorm/core v0.6.2 h1:EJLcSxf336POJr670wKB55Mah9f93xzvGYzNRgnT8/Y=
github.com/go-xorm/core v0.6.2/go.mod h1:bwPIfLdm/FzWgVUH8WPVlr+uJhscvNGFcaZKXsI3n2c=
github.com/go-xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a h1:9wScpmSP5A3Bk8V3XHWUcJmYTh+ZnlHVyc+A4oZYS3Y= github.com/go-xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a h1:9wScpmSP5A3Bk8V3XHWUcJmYTh+ZnlHVyc+A4oZYS3Y=
github.com/go-xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a/go.mod h1:56xuuqnHyryaerycW3BfssRdxQstACi0Epw/yC5E2xM= github.com/go-xorm/sqlfiddle v0.0.0-20180821085327-62ce714f951a/go.mod h1:56xuuqnHyryaerycW3BfssRdxQstACi0Epw/yC5E2xM=
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
@ -53,3 +49,9 @@ google.golang.org/appengine v1.4.0 h1:/wp5JvzpHIxhs/dumFmF7BXTf3Z+dd4uXta4kVyO50
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
xorm.io/builder v0.3.5 h1:EilU39fvWDxjb1cDaELpYhsF+zziRBhew8xk4pngO+A=
xorm.io/builder v0.3.5/go.mod h1:ZFbByS/KxZI1FKRjL05PyJ4YrK2bcxlUaAxdum5aTR8=
xorm.io/core v0.6.2 h1:EJLcSxf336POJr670wKB55Mah9f93xzvGYzNRgnT8/Y=
xorm.io/core v0.6.2/go.mod h1:bwPIfLdm/FzWgVUH8WPVlr+uJhscvNGFcaZKXsI3n2c=
xorm.io/core v0.6.3 h1:n1NhVZt1s2oLw1BZfX2ocIJsHyso259uPgg63BGr37M=
xorm.io/core v0.6.3/go.mod h1:8kz/C6arVW/O9vk3PgCiMJO2hIAm1UcuOL3dSPyZ2qo=

View File

@ -12,7 +12,7 @@ import (
"strconv" "strconv"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
// str2PK convert string value to primary key value according to tp // str2PK convert string value to primary key value according to tp

View File

@ -10,7 +10,7 @@ import (
"reflect" "reflect"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Interface defines the interface which Engine, EngineGroup and Session will implementate. // Interface defines the interface which Engine, EngineGroup and Session will implementate.
@ -28,7 +28,7 @@ type Interface interface {
Delete(interface{}) (int64, error) Delete(interface{}) (int64, error)
Distinct(columns ...string) *Session Distinct(columns ...string) *Session
DropIndexes(bean interface{}) error DropIndexes(bean interface{}) error
Exec(sqlOrAgrs ...interface{}) (sql.Result, error) Exec(sqlOrArgs ...interface{}) (sql.Result, error)
Exist(bean ...interface{}) (bool, error) Exist(bean ...interface{}) (bool, error)
Find(interface{}, ...interface{}) error Find(interface{}, ...interface{}) error
FindAndCount(interface{}, ...interface{}) (int64, error) FindAndCount(interface{}, ...interface{}) (int64, error)
@ -50,9 +50,9 @@ type Interface interface {
Omit(columns ...string) *Session Omit(columns ...string) *Session
OrderBy(order string) *Session OrderBy(order string) *Session
Ping() error Ping() error
Query(sqlOrAgrs ...interface{}) (resultsSlice []map[string][]byte, err error) Query(sqlOrArgs ...interface{}) (resultsSlice []map[string][]byte, err error)
QueryInterface(sqlorArgs ...interface{}) ([]map[string]interface{}, error) QueryInterface(sqlOrArgs ...interface{}) ([]map[string]interface{}, error)
QueryString(sqlorArgs ...interface{}) ([]map[string]string, error) QueryString(sqlOrArgs ...interface{}) ([]map[string]string, error)
Rows(bean interface{}) (*Rows, error) Rows(bean interface{}) (*Rows, error)
SetExpr(string, string) *Session SetExpr(string, string) *Session
SQL(interface{}, ...interface{}) *Session SQL(interface{}, ...interface{}) *Session

View File

@ -9,7 +9,7 @@ import (
"io" "io"
"log" "log"
"github.com/go-xorm/core" "xorm.io/core"
) )
// default log options // default log options

16
rows.go
View File

@ -9,7 +9,7 @@ import (
"fmt" "fmt"
"reflect" "reflect"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Rows rows wrapper a rows to // Rows rows wrapper a rows to
@ -113,17 +113,9 @@ func (rows *Rows) Close() error {
defer rows.session.Close() defer rows.session.Close()
} }
if rows.lastError == nil { if rows.rows != nil {
if rows.rows != nil { return rows.rows.Close()
rows.lastError = rows.rows.Close()
if rows.lastError != nil {
return rows.lastError
}
}
} else {
if rows.rows != nil {
defer rows.rows.Close()
}
} }
return rows.lastError return rows.lastError
} }

View File

@ -38,6 +38,22 @@ func TestRows(t *testing.T) {
cnt++ cnt++
} }
assert.EqualValues(t, 1, cnt) assert.EqualValues(t, 1, cnt)
assert.False(t, rows.Next())
assert.NoError(t, rows.Close())
rows0, err := testEngine.Where("1>1").Rows(new(UserRows))
assert.NoError(t, err)
defer rows0.Close()
cnt = 0
user0 := new(UserRows)
for rows0.Next() {
err = rows0.Scan(user0)
assert.NoError(t, err)
cnt++
}
assert.EqualValues(t, 0, cnt)
assert.NoError(t, rows0.Close())
sess := testEngine.NewSession() sess := testEngine.NewSession()
defer sess.Close() defer sess.Close()

View File

@ -14,7 +14,7 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
type sessionType int type sessionType int

View File

@ -9,7 +9,7 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
type incrParam struct { type incrParam struct {

View File

@ -7,7 +7,7 @@ package xorm
import ( import (
"testing" "testing"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -4,7 +4,7 @@
package xorm package xorm
import "github.com/go-xorm/builder" import "xorm.io/builder"
// Sql provides raw sql input parameter. When you have a complex SQL statement // Sql provides raw sql input parameter. When you have a complex SQL statement
// and cannot use Where, Id, In and etc. Methods to describe, you can use SQL. // and cannot use Where, Id, In and etc. Methods to describe, you can use SQL.

View File

@ -9,7 +9,7 @@ import (
"fmt" "fmt"
"testing" "testing"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -14,7 +14,7 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
func (session *Session) str2Time(col *core.Column, data string) (outTime time.Time, outErr error) { func (session *Session) str2Time(col *core.Column, data string) (outTime time.Time, outErr error) {

View File

@ -9,7 +9,7 @@ import (
"fmt" "fmt"
"strconv" "strconv"
"github.com/go-xorm/core" "xorm.io/core"
) )
func (session *Session) cacheDelete(table *core.Table, tableName, sqlStr string, args ...interface{}) error { func (session *Session) cacheDelete(table *core.Table, tableName, sqlStr string, args ...interface{}) error {

View File

@ -8,7 +8,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -9,8 +9,8 @@ import (
"fmt" "fmt"
"reflect" "reflect"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Exist returns true if the record exist otherwise return false // Exist returns true if the record exist otherwise return false
@ -34,6 +34,8 @@ func (session *Session) Exist(bean ...interface{}) (bool, error) {
return false, ErrTableNotFound return false, ErrTableNotFound
} }
tableName = session.statement.Engine.Quote(tableName)
if session.statement.cond.IsValid() { if session.statement.cond.IsValid() {
condSQL, condArgs, err := builder.ToSQL(session.statement.cond) condSQL, condArgs, err := builder.ToSQL(session.statement.cond)
if err != nil { if err != nil {

View File

@ -10,8 +10,8 @@ import (
"reflect" "reflect"
"strings" "strings"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
const ( const (

View File

@ -10,7 +10,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -11,7 +11,7 @@ import (
"reflect" "reflect"
"strconv" "strconv"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Get retrieve one record from database, bean's non-empty fields // Get retrieve one record from database, bean's non-empty fields

View File

@ -10,7 +10,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -12,7 +12,7 @@ import (
"strconv" "strconv"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Insert insert one or more beans // Insert insert one or more beans

View File

@ -9,7 +9,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -11,13 +11,13 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
func (session *Session) genQuerySQL(sqlorArgs ...interface{}) (string, []interface{}, error) { func (session *Session) genQuerySQL(sqlOrArgs ...interface{}) (string, []interface{}, error) {
if len(sqlorArgs) > 0 { if len(sqlOrArgs) > 0 {
return convertSQLOrArgs(sqlorArgs...) return convertSQLOrArgs(sqlOrArgs...)
} }
if session.statement.RawSQL != "" { if session.statement.RawSQL != "" {
@ -78,12 +78,12 @@ func (session *Session) genQuerySQL(sqlorArgs ...interface{}) (string, []interfa
} }
// Query runs a raw sql and return records as []map[string][]byte // Query runs a raw sql and return records as []map[string][]byte
func (session *Session) Query(sqlorArgs ...interface{}) ([]map[string][]byte, error) { func (session *Session) Query(sqlOrArgs ...interface{}) ([]map[string][]byte, error) {
if session.isAutoClose { if session.isAutoClose {
defer session.Close() defer session.Close()
} }
sqlStr, args, err := session.genQuerySQL(sqlorArgs...) sqlStr, args, err := session.genQuerySQL(sqlOrArgs...)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -227,12 +227,12 @@ func rows2SliceString(rows *core.Rows) (resultsSlice [][]string, err error) {
} }
// QueryString runs a raw sql and return records as []map[string]string // QueryString runs a raw sql and return records as []map[string]string
func (session *Session) QueryString(sqlorArgs ...interface{}) ([]map[string]string, error) { func (session *Session) QueryString(sqlOrArgs ...interface{}) ([]map[string]string, error) {
if session.isAutoClose { if session.isAutoClose {
defer session.Close() defer session.Close()
} }
sqlStr, args, err := session.genQuerySQL(sqlorArgs...) sqlStr, args, err := session.genQuerySQL(sqlOrArgs...)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -247,12 +247,12 @@ func (session *Session) QueryString(sqlorArgs ...interface{}) ([]map[string]stri
} }
// QuerySliceString runs a raw sql and return records as [][]string // QuerySliceString runs a raw sql and return records as [][]string
func (session *Session) QuerySliceString(sqlorArgs ...interface{}) ([][]string, error) { func (session *Session) QuerySliceString(sqlOrArgs ...interface{}) ([][]string, error) {
if session.isAutoClose { if session.isAutoClose {
defer session.Close() defer session.Close()
} }
sqlStr, args, err := session.genQuerySQL(sqlorArgs...) sqlStr, args, err := session.genQuerySQL(sqlOrArgs...)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -300,12 +300,12 @@ func rows2Interfaces(rows *core.Rows) (resultsSlice []map[string]interface{}, er
} }
// QueryInterface runs a raw sql and return records as []map[string]interface{} // QueryInterface runs a raw sql and return records as []map[string]interface{}
func (session *Session) QueryInterface(sqlorArgs ...interface{}) ([]map[string]interface{}, error) { func (session *Session) QueryInterface(sqlOrArgs ...interface{}) ([]map[string]interface{}, error) {
if session.isAutoClose { if session.isAutoClose {
defer session.Close() defer session.Close()
} }
sqlStr, args, err := session.genQuerySQL(sqlorArgs...) sqlStr, args, err := session.genQuerySQL(sqlOrArgs...)
if err != nil { if err != nil {
return nil, err return nil, err
} }

View File

@ -10,8 +10,8 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -9,8 +9,8 @@ import (
"reflect" "reflect"
"time" "time"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
func (session *Session) queryPreprocess(sqlStr *string, paramStr ...interface{}) { func (session *Session) queryPreprocess(sqlStr *string, paramStr ...interface{}) {
@ -194,14 +194,14 @@ func (session *Session) exec(sqlStr string, args ...interface{}) (sql.Result, er
return session.DB().ExecContext(session.ctx, sqlStr, args...) return session.DB().ExecContext(session.ctx, sqlStr, args...)
} }
func convertSQLOrArgs(sqlorArgs ...interface{}) (string, []interface{}, error) { func convertSQLOrArgs(sqlOrArgs ...interface{}) (string, []interface{}, error) {
switch sqlorArgs[0].(type) { switch sqlOrArgs[0].(type) {
case string: case string:
return sqlorArgs[0].(string), sqlorArgs[1:], nil return sqlOrArgs[0].(string), sqlOrArgs[1:], nil
case *builder.Builder: case *builder.Builder:
return sqlorArgs[0].(*builder.Builder).ToSQL() return sqlOrArgs[0].(*builder.Builder).ToSQL()
case builder.Builder: case builder.Builder:
bd := sqlorArgs[0].(builder.Builder) bd := sqlOrArgs[0].(builder.Builder)
return bd.ToSQL() return bd.ToSQL()
} }
@ -209,16 +209,16 @@ func convertSQLOrArgs(sqlorArgs ...interface{}) (string, []interface{}, error) {
} }
// Exec raw sql // Exec raw sql
func (session *Session) Exec(sqlorArgs ...interface{}) (sql.Result, error) { func (session *Session) Exec(sqlOrArgs ...interface{}) (sql.Result, error) {
if session.isAutoClose { if session.isAutoClose {
defer session.Close() defer session.Close()
} }
if len(sqlorArgs) == 0 { if len(sqlOrArgs) == 0 {
return nil, ErrUnSupportedType return nil, ErrUnSupportedType
} }
sqlStr, args, err := convertSQLOrArgs(sqlorArgs...) sqlStr, args, err := convertSQLOrArgs(sqlOrArgs...)
if err != nil { if err != nil {
return nil, err return nil, err
} }

View File

@ -9,7 +9,7 @@ import (
"fmt" "fmt"
"strings" "strings"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Ping test if database is ok // Ping test if database is ok

View File

@ -9,7 +9,7 @@ import (
"strconv" "strconv"
"testing" "testing"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -9,7 +9,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -11,8 +11,8 @@ import (
"strconv" "strconv"
"strings" "strings"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
func (session *Session) cacheUpdate(table *core.Table, tableName, sqlStr string, args ...interface{}) error { func (session *Session) cacheUpdate(table *core.Table, tableName, sqlStr string, args ...interface{}) error {

View File

@ -11,7 +11,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -12,8 +12,8 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/builder" "xorm.io/builder"
"github.com/go-xorm/core" "xorm.io/core"
) )
// Statement save all the sql info for executing SQL // Statement save all the sql info for executing SQL

View File

@ -9,7 +9,7 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -10,7 +10,7 @@ import (
"fmt" "fmt"
"log/syslog" "log/syslog"
"github.com/go-xorm/core" "xorm.io/core"
) )
var _ core.ILogger = &SyslogLogger{} var _ core.ILogger = &SyslogLogger{}

2
tag.go
View File

@ -11,7 +11,7 @@ import (
"strings" "strings"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
type tagContext struct { type tagContext struct {

View File

@ -10,7 +10,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -7,7 +7,7 @@ package xorm
import ( import (
"testing" "testing"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -11,7 +11,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -7,7 +7,7 @@ package xorm
import ( import (
"reflect" "reflect"
"github.com/go-xorm/core" "xorm.io/core"
) )
var ( var (

View File

@ -9,7 +9,7 @@ import (
"fmt" "fmt"
"testing" "testing"
"github.com/go-xorm/core" "xorm.io/core"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )

View File

@ -15,7 +15,7 @@ import (
"sync" "sync"
"time" "time"
"github.com/go-xorm/core" "xorm.io/core"
) )
const ( const (

View File

@ -15,7 +15,7 @@ import (
_ "github.com/denisenkom/go-mssqldb" _ "github.com/denisenkom/go-mssqldb"
_ "github.com/go-sql-driver/mysql" _ "github.com/go-sql-driver/mysql"
"github.com/go-xorm/core" "xorm.io/core"
_ "github.com/lib/pq" _ "github.com/lib/pq"
_ "github.com/mattn/go-sqlite3" _ "github.com/mattn/go-sqlite3"
_ "github.com/ziutek/mymysql/godrv" _ "github.com/ziutek/mymysql/godrv"