Евгений Высочин
Просветленный
(37979)
4 года назад
Во-первых, не видно описания твоих таблиц, не ясно что где и как, и стоит ли вообще это делать.
Во-вторых, чем больше рисуешь полей в таблице, тем больше ты нуб:)
Ибо замедляешь работу базы. А если база будет работать по сети, то вообще будут тормоза.
Сеть это не твой комп, у которого ОЗУ несколько гигов.
В сети трафик в разы слабее, и поэтому нужно, чтобы база состояла из нескольких небольших таблиц, чем из одно большой.
И запросы в такую базу нужно лимитировать, не тащить безлимитный размер данных типа select *...,а ограничивать порциями, например:
select name1,name2 from Names limit 100;
а лучше с помощью хранимой процедуры типа select name1,name2 from Names where id<200; вместо лимита на id можно прикрутить переменную внутри хранимой процедуры, значение которой изменяется от 0 и до max(id).
Для примера посмотри, как работают клиенты-интерфейсы для баз данных, например, программа HeidiSQL. В этих программах при просмотре любой таблицы первично отображается лишь часть строк, например, только первые 100. Далее, при перемещении вниз таблицы, программа подтягивает следующую порцию строк. Там не тянутся по беспределу сразу все строки таблицы, как select *...
Нужно по ключу из child_dictionary вытащить инфу из всех связанных таблиц. У меня получается связать первые три и НЕ получается по parent_dic_id доклеить словарь parent_dictionary с его значениями.