Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.09.08;
Скачать: [xml.tar.bz2];

Вниз

Что лучше делать: увеличивать количество записей или ???   Найти похожие ветки 

 
Sirus   (2003-08-19 07:31) [0]

Привет Мастера... Есть вопрос:
Что лучше делать: Увеличивать количество записей или увеличивать объем записи??? У меня в таблице запись состоит из фамилии и нескольких полей одинакового типа FIELD1, FIELD2, ... FIELDN. Есть два варианта таблицы:
1. Можно сделать одну запись со множеством полей
2. Можно сделать несколько записей с Фамилией и одним полем FIELD.
Помогите выбрать...


 
Verg   (2003-08-19 07:46) [1]

Приведи-ка описание таблицы для своих двух вариантов.
Т.е. create table .......
Посмотрим чем они отличаются. Похоже, что какая-то путаница с термином запись


 
Sirus   (2003-08-19 08:55) [2]

create table kvts (
un_id varchar(8),
fio varchar(50),
kvt1 integer,
kvt2 integer,
kvt3 integer,
kvt4 integer,
kvt5 integer,
kvt6 integer,
kvt7 integer,
kvt8 integer,
kvt9 integer,
kvt10 integer)

Дело в том что многие из этих полей в зависимости от обстоятельств могут оказаться NULL, и не участвовать в расчетах.
Есть идея просто сделать таблицу типа
create table kvts (
un_id varchar(8),
fio varchar(50),
kvt integer,
kvt_id integer)

KVT_ID чтобы узнать какое именно это поле...


 
stud   (2003-08-19 09:09) [3]

а зачем вообще нужны эти поля и что они описывают??


 
DenK_vrtz   (2003-08-19 09:11) [4]

>>Что лучше делать: Увеличивать количество записей или >>увеличивать объем записи???

Если отталкиваться от скорости работы, то лучше, я думаю, увеличить объем записи. Наличие в таблице лишних полей не влечет за собой никакого криминала.


 
Johnmen   (2003-08-19 09:13) [5]

Зависит от предметной области, смысловой нагрузки kvt int и их количества.


 
Sirus   (2003-08-19 09:14) [6]

В общем клиент платит за услуги по градации тарифов...
т.е. если услуга пястчная то он платит скажем 10 ед. по первой гр. т.е. в поле kvt1.
Если услуга стоящая то он платит 10 ед. по 1-гр., 15 по 2-гр. и тд...


 
stone   (2003-08-19 09:26) [7]

А эти графы для всех клиентов разные?


 
Danilka   (2003-08-19 09:26) [8]

второй вариант:
create table kvts (
un_id varchar(8),
fio varchar(50),
kvt integer,
kvt_id integer)

в любом случае не катит - большая избыточность.

тогда уж 2 таблицы:
create table kvts (
un_id varchar(8),
fio varchar(50))

и
create table kvts_sp (
un_id varchar(8),
kvt_id integer,
kvt integer)


и еще, un_id как я понимаю - ключ, он обязательно должен быть varchar(8)? на мой взгляд уж лучше интегер.


 
HSolo   (2003-08-19 10:07) [9]

Я присоединяюсь к варианту от Danilka © (19.08.03 09:26) с 2 таблицами. Только ключи, по-моему, лучше сделать integer (если у них нет особой причины быть непременно varchar-ами) - скорость выше (см. http://www.ibase.ru/devinfo/test1.htm).
И еще один довод в пользу решения с 2 таблицами:
> многие из этих полей в зависимости от обстоятельств могут оказаться NULL



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.09.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
3-24348
GrafRaf
2003-08-17 11:37
2003.09.08
Получение данных с др. сервака(ков) при выходе из строя ...


6-24611
ser
2003-06-17 12:49
2003.09.08
Работа с IMAP INDY 9.0


11-24399
nsvi
2002-12-24 14:16
2003.09.08
Как расширить емкость TKOLMemo


8-24565
Василий Петрович
2003-05-13 00:11
2003.09.08
Вопрос по звуку


6-24596
INTAARI
2003-07-02 12:59
2003.09.08
Не удается прочитать строку из сети протоколом UDP





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский