Стиль руководства по именам таблиц MySQL

Я хотел бы знать, какой является более правильным способом назвать таблицы и поля в базе данных MySQL.

И как дифференцировать таблицы, которые являются промежуточными таблицами.

Примеры:

Название таблицы:
пользователи или же пользователь

столбцы внешнего ключа:
Идентификатор пользователя или же Я бы или же Идентификатор пользователя

Таблица с двумя словами:
purchased_point или же point_puchased или же pointpuchased

Промежуточный стол (много ко многим)
users_sites или же user_sites или же usersites

Есть ли какое-то «руководство по стилю», например: https://www.codeigniter.com/user_guide/general/styleguide.html

1

Решение

Все шапки. Разделитель разных слов _ подчеркивание.

Префикс главной или родительской таблиц MSTR
Приставка дочерних таблиц MPNG
Таблицы транзакций, где несколько родителей называются TRXN

Опубликовать исправить все таблицы как _TBL

Используйте уникальные имена для таблиц как пользователь, а не как пользователь

Например. MSTR_USER_TBL, MPNG_ACCOUNT_TBL, TRXN_CART_ITEM_TBL

Эти соглашения я следую. Делает проще для чтения.

0

Другие решения

Я не знаю, является ли то, что мы делаем, стандартным, но вот что мы делаем:

  • Мы используем единственное имя. Множественное число не нужно: мы уже знаем, что в таблице может быть несколько пользователей User,
  • Наша база данных используется с приложением Java, поэтому мы используем Соглашение об именах Java для имени таблицы и имени столбца. Это хорошо работает с нашим слоем DAO. Это означает :
    1. без подчеркивания;
    2. верхний регистр для первой буквы каждого слова имени таблицы (PurchasedPoint);
    3. нижний регистр для первой буквы первого слова имени столбца и верхний регистр для первой буквы всех остальных слов (userID);
  • Для меня порядок слов в имени таблицы дает подсказку о взаимосвязи между таблицами. Например, если есть таблица Purchase и стол PurchasePoint Я могу легко догадаться, чем между ними существуют какие-то добрые отношения.
  • Для промежуточной таблицы мы бы использовали что-то вроде UserSite,

Надеюсь, что это может помочь.

0

По вопросам рекламы [email protected]