Я не уверен, какую базу данных вы используете, но в MS SQL Server вы можете определить, какой пользователь вошел в систему, и ограничить ваши результаты. Существует системная функция с именем suser_sname (), которая возвращает пользователя, который в данный момент выполняет запрос. Например, если бы я запустил «select suser_sname ()», он вернул бы «jj» (при условии, что мое имя пользователя - jj).
Таблица, которую вы предоставляете в качестве примера, похоже, использует UserID, который является просто int, поэтому вам нужно будет создать таблицу, которая свяжет вошедшего пользователя с идентификатором пользователя. Затем просто создайте представление, которое использует объединение, чтобы ограничить результаты просмотра пользователем, вошедшим в систему.
Вот пример:
(Я не тестировал этот код, поэтому могут быть некоторые проблемы с синтаксисом)
UserIDSName Table:
SUser UserID
jj 1
bob 2
Затем создайте представление:
create view Table1View
as
select userid, entityId
from Table1 t1
inner join UserIDSName uid on
t1.userid = uid.userid
and uid.SUser = suser_sname()
Опять же, я не слишком уверен, используете ли вы SQL Server или нет, но я думаю, что вы можете найти аналогичные функции в других базах данных. Также следует отметить, что вы можете добиться этого на стороне клиента с помощью предложения where.