MST

星途 面试题库

面试题:Go中GORM如何进行简单的数据库表创建

在Go语言中,使用GORM连接MySQL数据库,并创建一个名为`users`的表,表中包含`id`(自增主键)、`name`(字符串类型)和`age`(整型)字段,简述实现步骤并给出关键代码。
18.6万 热度难度
编程语言Go

知识考点

AI 面试

面试题答案

一键面试
  1. 安装GORM和MySQL驱动
    • 使用go get命令安装gorm.io/gormgorm.io/driver/mysql
  2. 连接MySQL数据库
    package main
    
    import (
        "gorm.io/driver/mysql"
        "gorm.io/gorm"
    )
    
    func main() {
        dsn := "user:password@tcp(127.0.0.1:3306)/database_name?charset=utf8mb4&parseTime=True&loc=Local"
        db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
        if err != nil {
            panic("failed to connect database")
        }
    }
    
  3. 定义结构体
    type User struct {
        ID   uint
        Name string
        Age  int
    }
    
  4. 创建表
    err = db.AutoMigrate(&User{})
    if err != nil {
        panic("failed to migrate table")
    }
    

完整代码示例:

package main

import (
    "gorm.io/driver/mysql"
    "gorm.io/gorm"
)

type User struct {
    ID   uint
    Name string
    Age  int
}

func main() {
    dsn := "user:password@tcp(127.0.0.1:3306)/database_name?charset=utf8mb4&parseTime=True&loc=Local"
    db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
    if err != nil {
        panic("failed to connect database")
    }

    err = db.AutoMigrate(&User{})
    if err != nil {
        panic("failed to migrate table")
    }
}