Я знайшов Рекомендації щодо іменування від MSDN, але чи є це рекомендацією щодо бази даних MSSQL від Microsoft?
Я знайшов Рекомендації щодо іменування від MSDN, але чи є це рекомендацією щодо бази даних MSSQL від Microsoft?
Відповіді:
Правила іменування, що використовуються в базі даних AdventureWorks SQL Server, демонструють багато найкращих практик щодо стилю.
Узагальнити:
Детальніше ви можете знайти тут:
Одне застереження: правила іменування баз даних можуть бути дуже суперечливими, і більшість розробників баз даних, з якими я зустрічався, мають особисту зацікавленість у своєму стилі. Я чув гарячі суперечки щодо того, чи слід називати таблицю "OrderHeader" або "OrderHeaders".
usp
та ufn
? Зберігається процедура, як правило, починається з дієслова, і функція, як правило, має вказане ім'я відповідно до своєї функції.
Ні, цього немає, але практики у наведеному вами посиланні варто пам’ятати.
Що стосується іменування збережених процедур - не встановлюйте перед ними префікс "sp_". Детальніше про те, чому, ви можете прочитати за цим посиланням :
"Не використовуйте префікс збережених процедур з sp_, оскільки цей префікс зарезервований для ідентифікації системних процедур."
Я не знаю, що означає "найкращі практики з точки зору стилю" у відповіді @ 8kb (на момент написання статті). Безумовно, деякі з перелічених пунктів ("Назви таблиць не множинні", "Без підкреслення" тощо) - це просто вибір стилю, який очевидно є суб'єктивним. Я б подумав, що найбільшими факторами тут будуть особисті уподобання керівника команди документації.
Що стосується евристики в SQL загалом (на відміну від власної SQL, такої як T-SQL), існує лише одна книга на цю тему: Стиль програмування Джо Джо Челко. Багато варіантів вибору бази даних SQL Server AdventureWorks суперечать вимогам Целка.
Конвенція Celko про іменування базується на міжнародному стандарті ISO 11179, наприклад, вказує, що для розділення елементів в назві слід використовувати розмежувальний символ (наприклад, підкреслення). Інші варіанти стилів аналогічно створюють резервні копії досліджень, наприклад, використовуючи виключно малі літери для назв стовпців, щоб допомогти скануванню людським оком. Без сумніву, там теж є суб'єктивні особисті переваги, але вони базуються на багаторічному досвіді в цій галузі.
Позитивом є те, що за останні роки в документах SQL Server все покращилося, наприклад, ключові слова SQL з великими літерами, крапки з комою для відокремлення висловлювань тощо. Пригодницькі роботи - це значне покращення для Northwind та пабів. Чому тепер функція сценаріїв у Management Studio не може виплюнути код, який стає трохи простішим на око ?!
Якщо ви збиралися створити посібник зі згоди імен SQL Server, я рекомендую розпочати з документа Костянтина на GitHub .