执行查询SQL时出错-Golang

I try to execute this query in Golang using native sql apis from golang.

type DB struct {
    *sql.DB
}

type IUser interface {
    CreateUserTable() (sql.Result, error)
}

//InitDB initializes the database
func InitDB() *DB {
    db, err := sql.Open(dbDriver, dbName)
    if err != nil {
        log.Fatal("failed to initialize database: ",err)
    }
    err2 := db.Ping()
    if err2 != nil {
        log.Fatal(err2)
    }

    // var database *DB
    // database.AutoMigrate(&domain.User{})

    return &DB{db}
}

func (db *DB) CreateUserTable() (sql.Result, error) {
    statement := "CREATE TABLE %s (%s, %s, %s, %s)"
    v := []interface{}{"User", "ID int PRIMARY KEY NOT NULL", "Name varchar(100) UNIQUE", "Email varchar(100) UNIQUE", "Address varchar(100) ",  "Username varchar(100) UNIQUE"}
    return db.Exec(fmt.Sprintf(statement, v...))
}

When I tried to executed above in the main function:

func main() {
    db := model.InitDB()
    newFunc(db)
}


func newFunc(db model.IUser) {
    r, err := db.CreateUserTable()
    if err != nil {
        fmt.Println("Error executing query - ", err)
    }
    fmt.Println(r)
}

It gives me error:

Error executing query - near "%": syntax error

How to fix this? (I'm using sqlite3 driver)

You have an issue in you code. Missing one %s argument in CREATE TABLE .

Update code as

statement := "CREATE TABLE %s (%s, %s, %s, %s, %s)"