github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/go-xorm/xorm/examples/singlemapping.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/insionng/yougam/libraries/xorm" 8 _ "github.com/mattn/go-sqlite3" 9 ) 10 11 type User struct { 12 Id int64 13 Name string 14 } 15 16 type LoginInfo struct { 17 Id int64 18 IP string 19 UserId int64 20 // timestamp should be updated by database, so only allow get from db 21 TimeStamp string `xorm:"<-"` 22 // assume 23 Nonuse int `xorm:"->"` 24 } 25 26 func main() { 27 f := "singleMapping.db" 28 os.Remove(f) 29 30 Orm, err := xorm.NewEngine("sqlite3", f) 31 if err != nil { 32 fmt.Println(err) 33 return 34 } 35 Orm.ShowSQL(true) 36 err = Orm.CreateTables(&User{}, &LoginInfo{}) 37 if err != nil { 38 fmt.Println(err) 39 return 40 } 41 42 _, err = Orm.Insert(&User{1, "xlw"}, &LoginInfo{1, "127.0.0.1", 1, "", 23}) 43 if err != nil { 44 fmt.Println(err) 45 return 46 } 47 48 info := LoginInfo{} 49 _, err = Orm.Id(1).Get(&info) 50 if err != nil { 51 fmt.Println(err) 52 return 53 } 54 fmt.Println(info) 55 }