Соглашения об именовании баз данных от Microsoft? - PullRequest
66 голосов
/ 29 августа 2010

Я нашел Правила именования от MSDN, но есть ли какое-либо руководство для базы данных MSSQL от Microsoft?

Ответы [ 3 ]

140 голосов
/ 29 августа 2010

Соглашения о присвоении имен, используемые в базе данных AdventureWorks SQL Server, демонстрируют множество передовых методов в отношении стиля.

Подводя итог:

  • Имена объектов легко понять
  • Имена таблиц не являются множественными (таблица «Пользователь», а не «Пользователи»)
  • Сокращений мало, но разрешено (т. Е. Qty, Amt и т. Д.)
  • Используется PascalCaseисключительно за исключением определенных имен столбцов (например, rowguid)
  • Без подчеркивания
  • Разрешены определенные ключевые слова (т. е. Name)
  • Хранимым процедурам предшествует "usp"
  • Функции начинаются с "ufn"

Более подробную информацию можно найти здесь:

Одно предостережение: соглашения об именах баз данных могут быть очень спорными, и большинство разработчиков баз данных IВстретились иметь личную ставкув их стиле.Я слышал горячие споры о том, должна ли таблица называться «OrderHeader» или «OrderHeaders».

16 голосов
/ 29 августа 2010

Нет, но приведенные вами ссылки полезны для понимания.

Что касается именования хранимых процедур - делайте , а не с префиксом "sp_". Вы можете узнать больше о причинах этой ссылки :

"Не ставьте префикс хранимых процедур с sp_, потому что этот префикс зарезервирован для идентификации системно-хранимых процедуры ".

6 голосов
/ 28 октября 2011

Я не знаю, что означает «лучшая практика с точки зрения стиля» в ответе @ 8kb (на момент написания).Конечно, некоторые из перечисленных пунктов («Названия таблиц не являются плюрализированными», «Без подчеркиваний» и т. Д.) - это просто выбор стиля, который явно субъективен.Я бы подумал, что личные предпочтения руководителя группы по документации будут здесь самым важным фактором.

Что касается эвристики в SQL в целом (в отличие от проприетарного SQL, такого как T-SQL), существует только одна книга Стиль программирования SQL Джо Селко . Многие варианты выбора базы данных AdventureWorks для SQL Server противоречат рекомендациям Celko.

Соглашение об именах Celko основано на международном стандарте ISO11179 например, указывает, что символ разделения (такой как подчеркивание) должен использоваться для разделения элементов в имени.Другие варианты стиля аналогичным образом подкрепляются исследованиями, например, с использованием исключительно строчных букв в именах столбцов, что облегчает сканирование человеческим глазом.Нет сомнений, что здесь есть и субъективные личные предпочтения, но они основаны на многолетнем опыте в этой области.

С другой стороны, в документах по SQL Server ситуация улучшилась за последние годы, например, ключевые слова SQL с большой буквы, точки с запятой в отдельных утверждениях и т. д. Приключенческие работы - это огромное улучшение в Northwind и пабах.Теперь, почему функция управления сценариями в Management Studio не может показывать код, который немного проще для глаз?!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...