2013-05-05 3 views
0

Я собираюсь использовать MySQL для базы данных для Java-программы. Java-программа будет содержать каталог мышц и тренировок. Чтобы хранить информацию о мышцах, я сделал таблицу под названием «мышцы». Первичный ключ в этой таблице должен быть именем мышцы. Но и оно должно содержать следующие данные: -Какие части тела мышцы принадлежит -Какие muscleheads содержит .which движение активирует его -Какой мышцы, связанные с нимMySQL, создающий первую таблицу

Для первичного ключа я хотел бы некоторые вроде строкового значения, я бы догадался, что Varchar() - это то, что я ищу, но MySQL не позволяет мне выбирать его для первичного ключа. И теперь я немного смущен, когда понял, сколько типов я могу выбрать, что было бы оптимальным выбором. Я бы предположил, что тот, который называется «Текст» или «Tinytext», был бы оптимальным, можете ли вы подтвердить это как правильный выбор?

+0

сбросив '[Java]' тег, как это не кажется, Java специфичны. –

+0

Возможный дубликат первичного ключа [varchar() или первичного ключа int?] (Http://stackoverflow.com/questions/3815070/varchar-primary-key-or-int-primary-key) – BobTheBuilder

+0

используйте целое число. он намного эффективнее – Randy

ответ

0

Во-первых, вы не задаете достаточно информации, чтобы найти настоящую модель данных, но для начала вы не захотите иметь имя мускула или другое строковое значение в качестве первичного ключа. Чтобы сделать его простым и со знанием того, что в этой таблице не будет более 1000 записей. Я бы начал с этого.

1 стол со всеми основными мускулами, однозначно идентифицированными Int, которые вы можете назначить при создании своих данных, это ваш ПК в таблице 1. У меня также была бы группа мышц в этой таблице, которая является FK для таблицы со всеми группами мышц, которые содержат Muscleheads.

1 Таблица с каждой Musclehead, которая связана PK/FK с первой таблицей, а также содержит информацию о части тела.

1 Таблица с информацией об упражнениях, относящейся к Muscleheads и ultimatley Мышцы в первом столе .. В силу отношений PK.

Идея заключается в том, что вы начинаете с базы высокого уровня мышц. Поскольку группы мышц - это способ собирать и группировать эти мышцы, вам нужна эта способность в этой таблице. Тогда всякий раз, когда вы достигаете отношения 1: n, вам в основном нужна другая таблица с отношением первичного ключа к базовой таблице высокого уровня.

Отсюда - Мышцы: Muscleheads или Muscleheads: Excercise activitys

+0

Спасибо, что помогло мне разобраться в использовании целочисленного первичного ключа, я постараюсь сделать это, как вы предлагаете :) – user2351675

Смежные вопросы