Рейтинг:
18
Wendelius
Если я правильно понял ваш вопрос и предложение (в том, что я пробовал), не ставьте имя машины в качестве столбца. Машины - это значения, поэтому они должны храниться в виде строк.
Подумайте, что произойдет, если понадобится новая машина... Вам нужно будет изменить структуру базы данных, и это, скорее всего, также повлияет на вызывающую программу.
Что касается исходной структуры, то если размер и машина определяют скорость, то ваша текущая структура таблицы кажется допустимой.
Вы написали:
If i continue to above approch then records will be 1000*100=100000
which is not tollerated by database engine.
Таблица 100 ' 000 строк-это не большая таблица. Любой современный движок базы данных должен быть в состоянии обрабатывать такое количество строк без каких-либо проблем.
Поэтому, если у базы данных действительно есть проблемы с таким небольшим количеством строк, я бы подумал о том, чтобы изменить базу данных. В противном случае попробуйте с ним.
[no name]
То, что я пробовал в таблице разделов, работает отлично, но я смотрю на будущую проблему, поэтому я опубликовал этот вопрос.
[no name]
В некоторых случаях эти реокорды могут стать большими.
Подумайте, что произойдет, если понадобится новая машина... Вам нужно будет изменить структуру базы данных, и это, скорее всего, также повлияет на вызывающую программу.
^^^
Для этой цели я отправил вопрос.
Wendelius
Просто чтобы убедиться, что мы на одной странице: это ключевая проблема здесь. При проектировании базы данных вы никогда не должны использовать значения в качестве имен столбцов, так как количество значений меняется. Это противоречит всем принципам проектирования.
И как уже было сказано, дело не только в том, что это противоречит принципам дизайна, но и в том, что такой подход приведет к серьезным проблемам, когда все изменится. Кроме того, использование такого подхода потребует от вас написания ненужного и излишне сложного кода по сравнению с задачей.
Мне кажется, я видел в каком-то вопросе, что вы используете MySQL. если это правильно, то MySQL должен легко обрабатывать сотни миллионов строк, так что количество строк, которые у вас есть, далеко не соответствует пределам ядра базы данных. Таким образом, наличие ста тысяч строк не оправдывает предложенный вами подход :)
[no name]
Да, я использую MYSQL с движком InnoDB, и я не уверен, что этот движок может справиться или нет, потому что каждая отдельная запись нуждается в значениях этой таблицы. так что я был немного волновался по поводу. Но теперь мне ясно, что я имею в виду.
[no name]
Благодарю Вас, Сэр, За Ваше Достойное Объяснение.
Рейтинг:
1
Patrice T
Цитата:
Если я продолжу выше подходить, то записи будут 1000*100=100000
который не оплачивается движком базы данных.
SQL-сервер не имеет проблем с обработкой таблицы с миллионами записей даже на самом маленьком оборудовании, если дизайн правильный.
Ваш пример показывает уникальное значение, вы не объясняете ни назначение таблицы, ни ее использование.
Цитата:
как я могу спроектировать эту таблицу?
Какого Совета вы ожидаете от этого пустяка ?
Цитата:
но проблема возникает, когда я пытаюсь выполнить запрос, передавая имя столбца по параметру
Вот почему все скажут вам, что это плохая идея, независимо от того, как используется таблица.
Вам нужно уточнить вопрос.
Wendelius
Противопоставить новичку.
[no name]
Какого Совета вы ожидаете от этого пустяка ?
^^
Будьте добры к ученику,не теряйте своих страстей во время ответа