Съгласно GRANT
команда, няма възможност за задаване на нива на разрешения за всеки ред (таблица/колони, да, но не и отделните редове).
Можете да настроите Изглед за да се справите с това и вместо това да предоставите на потребителя разрешение за достъп до изгледа.
Изглед като следния трябва да ви даде съобщенията въз основа на текущия потребител:
CREATE VIEW user_messages AS
SELECT *
FROM messages
WHERE
messages.from = user() OR messages.to = user();
И декларацията за предоставяне трябва да бъде подобна:
GRANT ALL ON db.user_messages TO 'jeffrey'@'localhost';