githaven/vendor/github.com/go-xorm/core
Mura Li d77176912b Use Go1.11 module (#5743)
* Migrate to go modules

* make vendor

* Update mvdan.cc/xurls

* make vendor

* Update code.gitea.io/git

* make fmt-check

* Update github.com/go-sql-driver/mysql

* make vendor
2019-03-27 19:15:23 +08:00
..
.gitignore Use Go1.11 module (#5743) 2019-03-27 19:15:23 +08:00
benchmark.sh Use Go1.11 module (#5743) 2019-03-27 19:15:23 +08:00
cache.go fix MSSQL bug on org (#3405) 2018-01-27 17:20:59 +02:00
circle.yml Use Go1.11 module (#5743) 2019-03-27 19:15:23 +08:00
column.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00
converstion.go Added all required dependencies 2016-11-04 08:43:11 +01:00
db.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00
dialect.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00
driver.go Added all required dependencies 2016-11-04 08:43:11 +01:00
error.go Added all required dependencies 2016-11-04 08:43:11 +01:00
filter.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00
go.mod Use Go1.11 module (#5743) 2019-03-27 19:15:23 +08:00
ilogger.go Added all required dependencies 2016-11-04 08:43:11 +01:00
index.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00
LICENSE Added all required dependencies 2016-11-04 08:43:11 +01:00
mapper.go Added all required dependencies 2016-11-04 08:43:11 +01:00
pk.go Added all required dependencies 2016-11-04 08:43:11 +01:00
README.md Use Go1.11 module (#5743) 2019-03-27 19:15:23 +08:00
rows.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00
scan.go fix MSSQL bug on org (#3405) 2018-01-27 17:20:59 +02:00
table.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00
type.go Update xorm to latest version and fix correct user table referencing in sql (#4473) 2018-07-20 10:10:17 +08:00

Core is a lightweight wrapper of sql.DB.

CircleCI

Open

db, _ := core.Open(db, connstr)

SetMapper

db.SetMapper(SameMapper())

Scan usage

Scan

rows, _ := db.Query()
for rows.Next() {
    rows.Scan()
}

ScanMap

rows, _ := db.Query()
for rows.Next() {
    rows.ScanMap()

ScanSlice

You can use []string, [][]byte, []interface{}, []*string, []sql.NullString to ScanSclice. Notice, slice's length should be equal or less than select columns.

rows, _ := db.Query()
cols, _ := rows.Columns()
for rows.Next() {
    var s = make([]string, len(cols))
    rows.ScanSlice(&s)
}
rows, _ := db.Query()
cols, _ := rows.Columns()
for rows.Next() {
    var s = make([]*string, len(cols))
    rows.ScanSlice(&s)
}

ScanStruct

rows, _ := db.Query()
for rows.Next() {
    rows.ScanStructByName()
    rows.ScanStructByIndex()
}

Query usage

rows, err := db.Query("select * from table where name = ?", name)

user = User{
    Name:"lunny",
}
rows, err := db.QueryStruct("select * from table where name = ?Name",
            &user)

var user = map[string]interface{}{
    "name": "lunny",
}
rows, err = db.QueryMap("select * from table where name = ?name",
            &user)

QueryRow usage

row := db.QueryRow("select * from table where name = ?", name)

user = User{
    Name:"lunny",
}
row := db.QueryRowStruct("select * from table where name = ?Name",
            &user)

var user = map[string]interface{}{
    "name": "lunny",
}
row = db.QueryRowMap("select * from table where name = ?name",
            &user)

Exec usage

db.Exec("insert into user (`name`, title, age, alias, nick_name,created) values (?,?,?,?,?,?)", name, title, age, alias...)

user = User{
    Name:"lunny",
    Title:"test",
    Age: 18,
}
result, err = db.ExecStruct("insert into user (`name`, title, age, alias, nick_name,created) values (?Name,?Title,?Age,?Alias,?NickName,?Created)",
            &user)

var user = map[string]interface{}{
    "Name": "lunny",
    "Title": "test",
    "Age": 18,
}
result, err = db.ExecMap("insert into user (`name`, title, age, alias, nick_name,created) values (?Name,?Title,?Age,?Alias,?NickName,?Created)",
            &user)