Если запись находится в базе данных, тогда откажитесь от операции вставки и удалите запись
У меня есть таблица, в которой хранятся "активные" пользователи какого-то произвольного объекта. Существует операция вставки при каждом входе и выходе определенного пользователя. То, что я хочу сделать, заключается в следующем:
- При обнаружении операции вставки в базу данных проверьте, присутствует ли имя пользователя в базе данных MYSQL.
- Если имя пользователя присутствует, не вставляйте и не удаляйте существующую запись.
- Если имя пользователя отсутствует, вставьте.
Есть ли способ добиться этого? Я довольно новичок в MYSQL, поэтому заранее прошу прощения, если что-то, что я сказал, не имеет смысла - просто попросите моего разъяснения.
1 ответ
Решение
То, что я хочу сделать, заключается в следующем:
- При обнаружении операции вставки в базу данных проверьте, присутствует ли имя пользователя в базе данных MYSQL.
Да, вы можете достичь этого
- Если имя пользователя присутствует, не вставляйте и не удаляйте существующую запись.
Вы можете вручную искать имя пользователя и делать оператор условия как хотите.
- Если имя пользователя отсутствует, вставьте.
То же самое.
Вот пример базы из того, что вы хотите:
--INPUT @Username
IF EXISTS(SELECT * FROM activeUsers WHERE Username = @Username) THEN
DELETE FROM activeUsers WHERE Username = @Username
ELSE
INSERT INTO activeUsers (columns...) VALUES (values)
END IF