云数据库 GAUSSDB-type DB:示例

时间:2024-11-02 18:50:23

示例

//本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)。
package main
/* Go驱动依赖包位置根据配置的go.mod设置。 */
import (
 "database/sql"
 _ "gitee.com/opengauss/openGauss-connector-go-pq"
 "log"
)
func main() {
 hostip := os.Getenv("GOHOSTIP")   //GOHOSTIP为写入环境变量的IP地址。
 port := os.Getenv("GOPORT")       //GOPORT为写入环境变量的port。
 usrname := os.Getenv("GOUSRNAME") //GOUSRNAME为写入环境变量的用户名。
 passwd := os.Getenv("GOPASSWD")   //GOPASSWDW为写入环境变量的用户密码。
 str := "host=" + hostip + " port=" + port + " user=" + usrname + " password=" + passwd + " dbname=postgres sslmode=disable"
 db, err:= sql.Open("opengauss", str)
 if err != nil {
  log.Fatal(err)
 }
 defer db.Close()

 err = db.Ping()
 if err != nil {
  log.Fatal(err)
 }

        _, err = db.Exec("drop table if exists testuser.test")
        _, err = db.Exec("create table test(id int, name char(10))")

 // 按位置绑定
 _, err = db.Exec("insert into test(id, name) values(:1, :2)", 1, "张三")
 if err != nil {
  log.Fatal(err)
 }

 // 按名称绑定
 _, err = db.Exec("insert into test(id, name) values(:id, :name)", sql.Named("id", 1), sql.Named("name", "张三"))
 if err != nil {
  log.Fatal(err)
 }
}
support.huaweicloud.com/centralized-devg-v3-gaussdb/gaussdb-12-0187.html