如何使用 gorm 编写特定的数据库模式?

我是 golang 的新手。我正在尝试使用 GORM 和数据库/sql 包写入特定的数据库模式。这是我的结构


type Person struct {

gorm.Model

Name                string    

Age                 int    

}

我在数据库中编写的函数是:


func writedb(){


psqlInfo := fmt.Sprintf("host=%s port=%d user=%s "+" password=%s dbname=%s sslmode=disable", host, port, user, password, dbname)

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

    if err != nil {

        panic(err)

        fmt.Println("Não conectou-se ao BANCO DE DADOS")

    }

    defer db.Close()


    db.AutoMigrate(&Person{})


    //t := time.Now()

    //ts := t.Format("2006-01-02 15:04:05")


    db.Create(&Person{Name : "alex", Age: 20})



}

我的数据库的结构像这样 databaseName --schemaPeople --schemaVehicle --schemaPublic


当我编译时,插入的数据转到公共模式中的一个新表,我想在人员模式中插入一行。我究竟做错了什么?我是在声明结构错误吗?我如何设置特定架构?


拉丁的传说
浏览 77回答 1
1回答

慕斯709654

在中,gorm您可以在结构的方法中表示架构TableName(),例如:type Person struct {    gorm.Model    Name string    Age  int}func (Person) TableName() string {    return "people.persons"}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go