基于serf的数据库同步模块库
chenshijun
2019-08-06 6ef6050a854cb9a20bef8005a5f2a8463374ef17
dbself.go
@@ -10,18 +10,17 @@
   "sync"
)
const (
   PersonSqliteDBPath = "/opt/workspace/DataBases/sync.db"
   PersonSqliteDBPath = "~/workspace/gitblit/dbserver/config/testdb.db"
)
var syncMut    sync.Mutex
var syncMut sync.Mutex
var SerfDbConn *Conn
// get Conn of db for do execute.
func InitDbConn(dbPath string) error {
   if dbPath == ""   {
   if dbPath == "" {
      dbPath = PersonSqliteDBPath
   }
@@ -73,7 +72,7 @@
}
// do exet when get querystring.
func DoExecute(sqlString []string) ([]*Result, error) {
func ExecuteWriteSql(sqlString []string) ([]*Result, error) {
   syncMut.Lock()
   defer syncMut.Unlock()
   allResults, err := SerfDbConn.Execute(sqlString, false, false)
@@ -84,6 +83,18 @@
   return allResults, nil
}
// do exet when get querystring.
func ExecuteQuerySql(sqlString []string) ([]*Rows, error) {
   syncMut.Lock()
   defer syncMut.Unlock()
   rows, err := SerfDbConn.Query(sqlString, false, false)
   if err != nil {
      fmt.Println("execute error!", err)
      return nil, err
   }
   return rows, nil
}
func Dumpdb() {
   var b strings.Builder