跳到主要內容

Golang筆記-利用xorm實現ORM-mssql



package main

import(
 "fmt"
 "time"
 "github.com/go-xorm/xorm"
 _ "github.com/denisenkom/go-mssqldb"
 )

//宣告對應 TABLE的物件
type User struct {
 Age int32 `xorm:"AGE"` //對應Table 欄位名稱
 Name string `xorm:"NAME"`
 AutoDate time.Time `xorm:"AUTODATE_TIME"`
}

//印出結果
func (user * User) String() string {
 return fmt.Sprintf("AGE: %d, Name: %s,  AUTO_DATE: %v", user. Age, user. Name,user.AutoDate)
}

//宣告xorm引擎
var x *xorm.Engine

func main() {
//結合time.Since來記錄執行時間
 now:=time.Now()

//如果採用其他db driver,請置換driver name,這邊採用mssql
 engine, err := xorm.NewEngine("mssql", "server=99.99.99.99;port=9999;user id=tester;password=999;database=TEST_DB")
 if err != nil {
  fmt.Println("新建引擎", err)
  return
 }

//顯示sql
 engine.ShowSQL(true)

 var user [] User
 engine.SQL("select * from TB_USER").Find(& user)
 fmt.Println(user[0].String(), time.Since(now).String())

}

留言