Я использую Горм. Я хочу вставить значение, пока не существует то же значение
точно так же как сырой sql.
INSERT INTO student (firstname, lastname)
SELECT 'NEW FIRSTNAME', 'NEW LASTNAME'
FROM DUAL
WHERE NOT EXISTS(
SELECT 1
FROM table_name
WHERE firstname = 'NEW FIRSTNAME' AND lastname = 'NEW LASTNAME'
)
LIMIT 1;
Как реализовать эту функцию с помощью gorm
type Student struct {
Firstname string
Lastname string
}
func insert() {
stu :=Student{"fir","la"}
if res := DB.Create(&stu).Or("some condition"); res.Error != nil {
logrus.Println(res.Error)
}
}
когда найдено то же значение, я хочу сообщение или сообщение об ошибке