golang 连接 oracle 数据库
3.引用文件:_ "github.com/sijms/go-ora/v2"
·
- 获取到数据库连接字符串
connStr:=`server=111.11.111.11;port=33333;database=DB_RECORD_RAW_xxx;user id=db_record_raw_xxx;password=9ecf55f15f021111`
- 格式化sqlserver字符串,连接oracle数据库,返回数据库对象
/*
CreateOracleSQLConnV2 用于创建数据库链接,新的方法用于数据库核心认证
*/
func CreateOracleSQLConnV2(dbconfigdatastr string) (*sql.DB, error) {
//建立 Oracle
//fmt.Println("dbconfigdatastr", dbconfigdatastr)
formatOracleConnStr(&dbconfigdatastr)
sqldbdata, err := sql.Open("oracle", dbconfigdatastr)
//sqldbdata, err := sql.Open("oci8", dbconfigdatastr)
if err != nil {
sbjlog.Debug("sql application pool:%s\n", err)
defer sqldbdata.Close()
return sqldbdata, err
}
//测试创建链接是否成功
err = sqldbdata.Ping()
dbName := strings.Split(dbconfigdatastr, "/")[2]
if err != nil {
sbjlog.Debug("%s DB Ping err : %s\n", dbName, err)
defer sqldbdata.Close()
} else {
sbjlog.Printf("The Sql link is successful - %s.", dbName)
}
return sqldbdata, err
}
func formatOracleConnStr(connStr *string) {
connStrArray := strings.Split(*connStr, "@")
if len(connStrArray) != 2 {
return
}
*connStr = "oracle://" + strings.Replace(connStrArray[0], "/", ":", -1) + "@" + connStrArray[1]
return
}
3.引用文件:_ "github.com/sijms/go-ora/v2"
package main
import (
"database/sql"
"fmt"
"net/http"
"time"
"cntotal.com/sbjbase/xfile"
"cntotal.com/sbjlog"
_ "github.com/denisenkom/go-mssqldb"
_ "github.com/sijms/go-ora/v2"
)
更多推荐
已为社区贡献1条内容
所有评论(0)