使用Golang在Redshift数据库上进行CRUD操作

时间:2017-03-23 22:50:52

标签: go crud amazon-redshift

您能否给我一些解释和一些关于如何完成的代码示例(例如:创建表格和插入数据)? 你建议我使用哪个图书馆?

谢谢!

1 个答案:

答案 0 :(得分:3)

  • 请注意 github.com/lib/pq
  • 的副作用导入
  • 此查询可以由db.Query()或db.Exec()
  • 运行
  • https://golang.org/pkg/database/sql/#example_DB_Query
  • https://golang.org/pkg/database/sql/#pkg-examples

    import (
        _ "github.com/lib/pq"
        "database/sql"
        "fmt"
    )
    
    func MakeRedshfitConnection(username, password, host, port, dbName string) (*sql.DB, error) {
    
        url := fmt.Sprintf("sslmode=require user=%v password=%v host=%v port=%v dbname=%v",
            username,
            password,
            host,
            port,
            dbName)
    
        var err error
        var db *sql.DB
        if db, err = sql.Open("postgres", url); err != nil {
            return nil, fmt.Errorf("redshift connect error : (%v)"), err
        }
    
        if err = db.Ping(); err != nil {
            return nil, fmt.Errorf("redshift ping error : (%v)", err)
        }
        return db, nil
    }