Горм не позволяет "УДАЛИТЬ ИЗ " с помощью в качестве параметра - PullRequest
0 голосов
/ 25 марта 2020

Я пытаюсь очистить некоторые таблицы с помощью gorm на лету, когда я запускаю следующую функцию, я получаю эту ошибку

Ошибка 1064: у вас есть ошибка в вашем SQL синтаксис; проверьте руководство, соответствующее вашей версии сервера MariaDB, чтобы найти правильный синтаксис для использования рядом с '' в строке 1

tearDown([]string{"lag, border_switch"})
func tearDown(tablesToDelete []string) {
    db, err := gorm.Open("mysql", "root@(127.0.0.1:3306)/sdn?charset=utf8&parseTime=True&loc=Local")
    if err != nil {
        panic(err)
    }
    defer db.Close()

    for _, table := range tablesToDelete {
        query := "DELETE FROM " + table + ";"
        db.Exec(query)
    }
}

1 Ответ

0 голосов
/ 26 марта 2020

Могут быть проблемы в названии таблиц. В своем запросе вы рассматриваете lag, border_switch как одно имя таблицы. Код ниже может решить вашу проблему

tearDown([]string{"lag", "border_switch"})
...