Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
нуждаюсь в советах! (Олег) 28/03/2003 - 20:51:49
      Re: нуждаюсь в советах! (Dinky) 28/03/2003 - 21:57:53
      Re: нуждаюсь в советах! (victorb) 28/03/2003 - 22:00:01
      Re: нуждаюсь в советах! (walrus) 28/03/2003 - 22:23:49
      Re: нуждаюсь в советах! (Олег) 28/03/2003 - 22:38:50
      Re: нуждаюсь в советах! (Олег) 28/03/2003 - 23:03:54
      Re: нуждаюсь в советах! (Dinky) 28/03/2003 - 23:06:32
      Re: нуждаюсь в советах! (Валентин) 31/03/2003 - 11:40:26

> Original message text:
> From: Олег - 28/03/2003 - 20:51:49
> Subject:нуждаюсь в советах!
> -----------------
> очень хочется узнать мнение опытных специалистов, чтобы чувствовать себя увереннее и свести в будущем ошибки проектирования к минимуму.
>
> База данных по организациям и их представителям.
> Создаю две таблицы:
> 1. для данных об организациях
>
> CREATE TABLE `members` (
> `member_id` smallint(4) NOT NULL auto_increment,
> `member_name` char(160) NOT NULL default '',
> `member_status` char(10) default NULL,
> `member_country` char(40) NOT NULL default '',
> `member_city` char(40) NOT NULL default '',
> `member_index` char(10) default NULL,
> `member_address` char(70) default NULL,
> `member_tel` char(40) default NULL,
> `member_fax` char(40) default NULL,
> `member_email` tinyint(4) default NULL,
> PRIMARY KEY (`member_id`)
> ) TYPE=MyISAM
>
> 2. для данных о представителях организаций
>
> CREATE TABLE `persons` (
> `member_id` smallint(4) NOT NULL default '0',
> `person_name` char(70) NOT NULL default '',
> `person_post` char(200) NOT NULL default '',
> `person_email` char(40) default NULL,
> PRIMARY KEY (`member_id`),
> UNIQUE KEY `member_id` (`member_id`)
> ) TYPE=MyISAM
>
> Возникшие вопросы:
> Чтобы связать записи в обоих таблицах создаю колонки member_id.
> member_id должно быть уникальным поэтому создаю с параметрами (auto_increment, PRIMARY KEY)
> - правилен ли и насколько рационален такой подход?
> - нужно ли указывать уникальность поля везде? даже где уникальность очевидна (например member_name)
> - как правильнее выбирать ограничение по длине?
>


From: walrus - 28/03/2003 - 22:23:49
Subject:нуждаюсь в советах!
-----------------
1) если вы указывете primary key (member_id), то нет необходимости указывать unique ... (member_id) так как primary key сам по себе unique.

2) я бы посоветовал использовать varchar вместо char для большинства полей. Если вы пишите person_post char(200), то это поле будет занимать 200 байт в таблице, даже если person_post на самом деле 5 байт.

3) не очень понятна структура. Так как стоит unique (member_id) в persons, получается, что на каждый members может быть только один persons. Тогда зачем отдельная таблица для persons? не проще ли напихать поля из persons в members и обойтись обной таблицей?

3) Я бы воздержался от утверждений что member_name должен быть уникальным (по крайней мере если это реальные имена).



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
7487



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |