db.go 1006 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package db
  2. import (
  3. "fmt"
  4. "mtp2_if/config"
  5. "mtp2_if/logger"
  6. "github.com/xormplus/core"
  7. "github.com/xormplus/xorm"
  8. "github.com/xormplus/xorm/log"
  9. )
  10. //var driverName = "oci8"
  11. //var dataSourceName = "mtp2_test18/muchinfo@192.168.31.117:1521/orcl"
  12. // Engine DB Engine
  13. var Engine *xorm.Engine
  14. // InitDbEngine 创建数据库驱动
  15. func InitDbEngine() error {
  16. driverName := config.SerCfg.GetDbDriver()
  17. dataSourceName := config.SerCfg.GetDbSource()
  18. var err error
  19. Engine, err = xorm.NewOracle(driverName, dataSourceName)
  20. if err != nil {
  21. fmt.Println("create db engine failed:", err)
  22. return err
  23. }
  24. Engine.SetMaxIdleConns(10)
  25. Engine.SetMaxOpenConns(100)
  26. // 将SQL写到日志文件
  27. logger := log.NewSimpleLogger(logger.GetLogWriter())
  28. Engine.SetLogger(logger)
  29. // 将SQL打印到Console
  30. Engine.ShowSQL(true)
  31. Engine.SetTableMapper(core.SameMapper{})
  32. return nil
  33. }
  34. // GetEngine GetEngine
  35. func GetEngine() *xorm.Engine {
  36. return Engine
  37. }
  38. // Close Close
  39. func Close() {
  40. Engine.Close()
  41. }