golang使用xorm(odbc方式)操作達夢數據庫

步驟:

1、達夢客戶端安裝和ODBC數據源配置(略過),官網程序員手冊pdf中有詳細過程文檔下載地址
2、https://github.com/go-xorm/xorm 需要用到的依賴包。
3、https://github.com/alexbrainman/odbc go官方寫的odbc驅動。

名詞解釋(連接語句需要使用):

數據庫驅動名詞(driver):DM8 ODBC DRIVER
數據庫名詞(database):DM
連接地址(server):127.0.0.1:5236
用戶名(uid): userName
密碼(pwd):password
在這裏插入圖片描述在這裏插入圖片描述

golang代碼實現:
package main

import (
	"fmt"
	_ "github.com/alexbrainman/odbc"  // google's odbc driver
	"github.com/go-xorm/xorm"
	"xorm.io/core"
)

type Person struct {
	PersonId     int		 `xorm:"PERSONID"`
	Sex          string		 `xorm:"SEX"`
	Name         string		 `xorm:"NAME"`
	Email        string		 `xorm:"EMAIL"`
	Phone        string 	 `xorm:"PHONE"`
}

func main() {

	Engine, err := xorm.NewEngine("odbc", "driver={DM8 ODBC DRIVER};server=127.0.0.1:5236;database=DM;uid=userName;pwd=password;charset=utf8")
	if err != nil {
		fmt.Println("new engine got error:", err)
		return
	}
	if err := Engine.Ping(); err != nil {
		fmt.Println("ping got error:", err)
		return
	}

	Engine.SetTableMapper(core.SameMapper{})
	Engine.ShowSQL(true)
	Engine.SetMaxOpenConns(5)
	Engine.SetMaxIdleConns(5)

	total, err := Engine.Table("PERSON.PERSON").Count(&Person{})
	if nil != err {
		fmt.Println(`engine query got error:`, err.Error())
		return
	}

	fmt.Println("total count is:",total)
}

結果:在這裏插入圖片描述

後續會寫cgo方式操作達夢數據庫。可以跟大家一起探討。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章