亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 Gorm 連接 PostgreSQL 數據庫

如何使用 Gorm 連接 PostgreSQL 數據庫

Go
慕容708150 2023-07-10 10:09:17
我無法連接到 PostgreSQL。var db *gorm.DBvar err errorfunc main() {    router := mux.NewRouter()    var err error    db, err = gorm.Open("postgres", "host=localhost port=5432 user=postgres dbname=dvdrental password=12345")    if err != nil {        panic("failed to connect database")    }我期望連接數據庫并獲取 api。
查看完整描述

3 回答

?
子衿沉夜

TA貢獻1828條經驗 獲得超3個贊

這是我發現連接到 postgres 的最佳方式。


import _ "github.com/jinzhu/gorm/dialects/postgres"

dsn := url.URL{

        User:     url.UserPassword(conf.User, conf.Password),

        Scheme:   "postgres",

        Host:     fmt.Sprintf("%s:%d", conf.Host, conf.Port),

        Path:     conf.DBName,

        RawQuery: (&url.Values{"sslmode": []string{"disable"}}).Encode(),

    }

    db, err := gorm.Open("postgres", dsn.String())


查看完整回答
反對 回復 2023-07-10
?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

遵循官方文檔,它對我有用,請訪問https://gorm.io/docs/connecting_to_the_database.html


import (

  "gorm.io/driver/postgres"

  "gorm.io/gorm"

)


dsn := "host=localhost user=gorm password=gorm dbname=gorm port=9920 sslmode=disable TimeZone=Asia/Shanghai"

db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})

我只需刪除主機變量并輸入其余詳細信息即可工作。


查看完整回答
反對 回復 2023-07-10
?
森欄

TA貢獻1810條經驗 獲得超5個贊

首先,這個問題保留了想象的空間。

無論如何,以下是您無法將 gorm 連接到 postgres 的可能用例:

  1. 確保您的 postgres 在您指定的主機上運行良好(在本例中為:localhost)

  2. 如果沒問題,請確保您的用戶名和密碼正確

如果一切正常,您可以在 CLI 中檢查:

$ sudo -i -u postgres
$ psql

如果成功,則意味著代碼中有其他內容。據我所知,您沒有顯示導入部分。你是否默默地導入了 postgres gorm 方言?

import _ "github.com/jinzhu/gorm/dialects/postgres"


查看完整回答
反對 回復 2023-07-10
  • 3 回答
  • 0 關注
  • 387 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號