package db import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) func Open(dsn string) (*sql.DB, error) { db, err := sql.Open("mysql", dsn) if err != nil { return nil, fmt.Errorf("open db: %w", err) } if err := db.Ping(); err != nil { return nil, fmt.Errorf("ping db: %w", err) } return db, nil } func Migrate(db *sql.DB) error { _, err := db.Exec(schema) return err }