2024-05-18 17:12:24 +08:00
|
|
|
package dao
|
|
|
|
|
|
|
|
|
|
import (
|
2024-06-09 11:22:58 +08:00
|
|
|
"fmt"
|
2024-05-18 17:12:24 +08:00
|
|
|
"gorm.io/driver/mysql"
|
|
|
|
|
"gorm.io/gorm"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
var DB *gorm.DB
|
|
|
|
|
|
|
|
|
|
func Init() {
|
2024-06-09 14:24:12 +08:00
|
|
|
dsn := "video_t2:2t2SKHmWEYj2xFKF@tcp(127.0.0.1:3306)/video_t2?charset=utf8mb4&parseTime=True&loc=Local"
|
2024-05-18 17:12:24 +08:00
|
|
|
|
|
|
|
|
db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
|
|
|
|
|
if err != nil {
|
|
|
|
|
panic("failed to connect database")
|
|
|
|
|
}
|
2024-06-09 11:22:58 +08:00
|
|
|
err = db.AutoMigrate(&User{})
|
|
|
|
|
if err != nil {
|
|
|
|
|
fmt.Println("user table:", err)
|
|
|
|
|
} // 自动迁移,创建表,如果表已经存在,会自动更新表结构,不会删除表,只会创建不存在的表
|
2024-06-09 14:22:54 +08:00
|
|
|
err = db.AutoMigrate(&Video{})
|
|
|
|
|
if err != nil {
|
|
|
|
|
fmt.Println("video table:", err)
|
|
|
|
|
} // 自动迁移,创建表,如果表已经存在,会自动更新表结构,不会删除表,只会创建不存在的表
|
|
|
|
|
err = db.AutoMigrate(&Device{})
|
|
|
|
|
if err != nil {
|
|
|
|
|
fmt.Println("device table:", err)
|
|
|
|
|
} // 自动迁移,创建表,如果表已经存在,会自动更新表结构,不会删除表,只会创建不存在的表
|
2024-05-18 17:12:24 +08:00
|
|
|
DB = db
|
|
|
|
|
}
|
2024-05-18 18:16:34 +08:00
|
|
|
|
|
|
|
|
func Close() {
|
|
|
|
|
sqlDB, err := DB.DB()
|
|
|
|
|
if err != nil {
|
|
|
|
|
panic("failed to connect database")
|
|
|
|
|
}
|
|
|
|
|
sqlDB.Close()
|
|
|
|
|
}
|