Табличные функции INFORMATION_SCHEMA.QUERY_HISTORY * имеют столбец USER_NAME, и вы можете отфильтровать по QUERY_TEXT, чтобы найти оператор CREATE представления.
Это должно работать, если представления не были созданы с переменной. Например: CREATE OR REPLACE VIEW IDENTIIER($MY_VAR)...
, где MY_VAR
- это переменная, содержащая имя представления.
UPDATE
INFORMATION_SCHEMA.QUERY_HISTORY Табличные функции возвращают результаты за последние 7 дней. Также см. Табличные функции ACCOUNT_USAGE.QUERY_HISTORY , которые возвращают результаты за последние 365 дней с задержкой в 45 минут.
ОБНОВЛЕНИЕ 2
Вы также можете используйте соглашения, такие как:
- Предоставьте каждому пользователю свою собственную схему, составленную из его имени или инициалов
- Попросите пользователей указать свое имя или инициалы в представлении. КОММЕНТАРИЙ
- Или попросите пользователей поставить префикс или суффикс своих представлений с их инициалами
Если представления создаются с помощью скрипта или хранимой процедуры, то вы можете автоматизировать описанное выше.
Наконец, хотя это не лучшая практика, вы можете создать отдельную роль для каждого пользователя. Это, однако, создает большие административные издержки, особенно при масштабировании, и не рекомендуется.