#sql #sql-server #database-design #admin #owner
Вопрос:
Я уже несколько дней пытаюсь найти команду, которая вернет мне имя владельца для конкретной базы данных. например, Имя базы данных = WAREHOUSE_DATA (в этой базе данных 500 таблиц и несколько владельцев).
Есть ли способ каким-то образом найти их имена или удостоверения личности?
Последнее, что я пробовал, это:
SELECT *
FROM WAREHOUSE_DATA.sys.tables
но в нем нет имен создателей таблиц.
Примечание: Я просто использую MSSMS, у меня нет никаких серверных инструментов или чего-то еще для мониторинга всего сервера.
Спасибо.
Комментарии:
1. В SQL Server создатель и владелец-это разные вещи. К чему вы на самом деле стремитесь, поскольку, похоже, используете это слово взаимозаменяемо. Если вам нужно первое, то, если вы не зарегистрируете это где-нибудь, у вас его не будет (SQL Server не хранит эту информацию). Если вам нужен владелец, это связано со схемой, в которой находится таблица (и вы можете легко получить схему с помощью
sys.schemas
системного представления).2. например, у меня есть имя базы данных = WAREHOUSE_DATA, имя схемы: PROD и, скажем, 5 таблиц: 1. aaa_customers 2. bbb_price 3. ccc_address 4. ddd_revenue 5. eee_cost Теперь я знаю, что создал таблицу 4, но я хотел бы посмотреть, кто является создателями таблиц 1,2,3 и 5 (их имя/фамилия)
3. Это не отвечает на вопрос, который я задал в комментарии, @fym . Вы не подтверждаете, нужен ли вам создатель или владелец (схема).
4. Честно говоря, я не понимаю вашего вопроса. Я привел вам пример выше, поэтому мне просто интересно посмотреть, кто создал таблицу в разделе database = WAREHOUSE_DATA на SQL-сервере. Я не эксперт, поэтому это может быть причиной неправильного понимания вашего вопроса.
5. «поэтому мне просто интересно посмотреть, кто создал таблицу «, Это отвечает на вопрос, который я задал: «[Вам нужен создатель или владелец (схема)» . И ответ заключается в том, что если вы не вошли в систему где-то, кто ее создал, то вам не повезло; SQL Server не регистрирует эту информацию.