Ссылка на doc и добавление уникального ключа к столбцу name
в таблице.
ALTER TABLE users ADD UNIQUE name (name);
Теперь, если вы вставите то же имя, вы получите ошибку дублированного ключа, используйте необработанный запрос:
DB::insert(
'INSERT INTO users (name, sex, city, type) values (?, ?, ?, ?)
ON DUPLICATE KEY UPDATE type=VALUES(type)',
['Sam', 'male', 'Delhi', 'admin']
);
Теперь, когда вставьте новые данные и столбец name
будет дублирован в таблице, обновите столбец старой записи type
.
Кстати,Вы можете использовать этот пакет для альтернативного необработанного запроса.