Я не знаю, существует ли на самом деле какое-либо «лучшее» соглашение об именах, поскольку оно действительно сводится к личным предпочтениям и простоте разработки. Мой совет - выбрать соглашение об именах и придерживаться его. Если вы хотите отделить слова подчеркиванием, сделайте это во всех ваших объектах базы данных. Если вы хотите использовать camelCase, делайте это во всех ваших объектах базы данных.
В моем магазине мы придерживаемся следующих правил:
Мы разделяем слова подчеркиванием и используем все строчные буквы.
Наши имена таблиц описывают, что они из себя представляют: dbo.person, dbo.invoice.
Наши имена таблиц «многие ко многим» также описывают, какие они есть (с добавлением « мм» для обозначения отображаемого отношения «многие ко многим»: dbo.person_mm_address. Наши пользовательские хранимые процедуры описывают как объект, так и выполняемое действие: usp_person_select) , usp_address_select_by_city Наши представления и функции следуют тем же правилам, что и хранимые процедуры.Наши индексы включают таблицу, ключевые столбцы (по порядку) и указание кластеризованных / некластеризованных: ix_person_last_name_first_name_nc
То, что это то, что мы используем в моем магазине, не означает, что эти правила подходят именно вам. Выберите то, с чем вы и ваша команда разработчиков согласитесь, что это полезно и легко для разработки, и создайте культуру знания и использования любого соглашения об именах, которое вы решите. В нашем случае это включает проверку кода для любых объектов, созданных в базе данных. Со временем комбинация документированного соглашения о присвоении имен и проверки однорангового кода привела к все меньшему количеству отклонений от соглашения.
Я надеюсь, что этот «не ответ» поможет каким-то образом.