Перейти к содержимому



Таблица в таблице

#1 bor10811
bor10811
  • Пользователь
  • 88 сообщений
  • Репутация: 3
0

Отправлено 15 Июнь 2019 - 12:57

Мне нужно создавать много таблиц для одного плагина. При этом они будут добавляться и удаляться. Соответственно вопрос: есть ли возможность в таблице sql создавать другие таблицы?


 

 

  • 0

#2 Artos
Artos
  • Пользователь
  • 105 сообщений
  • Репутация: 12

Отправлено 15 Июнь 2019 - 13:36

Какие таблицы, таблицы html или таблицы базы?


  • 0

#3 bor10811
bor10811
    Topic Starter
  • Пользователь
  • 88 сообщений
  • Репутация: 3

Отправлено 15 Июнь 2019 - 14:16

Таблицы базы


  • 0

#4 fedornabilkin
fedornabilkin
  • Модератор
  • 1 177 сообщений
  • Репутация: 201

Отправлено 15 Июнь 2019 - 16:25

Нет, таблица подразумевает сохранение простых типов данных. Опиши задачу подробнее, может кто чего и подскажет как решить.


  • 0

Надо обсудить предложение. А тут знакосчиталка считает знаки. Про Yii2 написано.



#5 Андрей WPM
Андрей WPM
  • Модератор
  • 890 сообщений
  • Репутация: 123

Отправлено 15 Июнь 2019 - 16:37

@bor10811, если немного перефразировать вопрос и делать ни таблицу в таблице, а несколько таблиц в одной базе данных, то тогда вопрос более логично звучать будет. И да, несколько таблиц в одной базе можно создать одним и тем же плагином и удалять их по требованию.


  • 0


#6 Ixman
Ixman
  • Пользователь PRO
  • 3 162 сообщений
  • Репутация: 839

Отправлено 15 Июнь 2019 - 22:07

Если данных не особо много, то можно сохранять массив в виде кодированной строки используя функции типа json_encode или serealize


  • 0


#7 bor10811
bor10811
    Topic Starter
  • Пользователь
  • 88 сообщений
  • Репутация: 3

Отправлено 15 Июнь 2019 - 23:02

Мне нужно, что именно в одной таблице SQL были другие таблицы. То есть открываем базу данных, там есть различные системные таблицы CMS или самодельного движка. И среди этих таблиц должна быть одна таблица, в которой всё и должно храниться. Это нужно, чтобы не загромождать БД таблицами, так как их планируется создавать очень много.

 

Уже нашёл пару решений:

 

1. Использовать формат JSON

 

2. Использовать NoSQL

 

Пока не знаю, какой вариант выберу, но вопрос можно считать закрытым.


  • 0

#8 Artos
Artos
  • Пользователь
  • 105 сообщений
  • Репутация: 12

Отправлено 16 Июнь 2019 - 00:32

Это нужно, чтобы не загромождать БД таблицами
Может под это дело создать отдельную базу, если есть такая возможность?

В этом случае не потребуется осваивать другие стандарты и, пожалуй, работать пошустрее будет


  • 0

#9 fedornabilkin
fedornabilkin
  • Модератор
  • 1 177 сообщений
  • Репутация: 201

Отправлено 16 Июнь 2019 - 11:14

Это нужно, чтобы не загромождать БД таблицами, так как их планируется создавать очень много.

Ты серьезно? Всегда надо учитывать, что это только для человека может быть много таблиц в БД или много колонок в таблице. А для базы данных все равно сколько у нее таблиц или сколько колонок в таблицах. Надо абстрагироваться от этого понимания.

У меня на одном сайте около 40 таблиц и я думал, что это много и надо как-то остепениться. А когда увидел базу, в которой 500+ таблиц и по пол сотни млн строк. Я понял, что количество не так важно, важнее архитектура и системный подход.


  • 1

Надо обсудить предложение. А тут знакосчиталка считает знаки. Про Yii2 написано.



#10 bor10811
bor10811
    Topic Starter
  • Пользователь
  • 88 сообщений
  • Репутация: 3

Отправлено 16 Июнь 2019 - 16:42

Может под это дело создать отдельную базу, если есть такая возможность?
 
Тоже вариант

  • 0

#11 web-coder
web-coder
  • Пользователь
  • 118 сообщений
  • Репутация: 19

Отправлено 20 Июнь 2019 - 19:09

Использовать формат JSON

 

А вы подумали как в таком случае делать выборку по условию?

 

Вообще не понимаю, зачем нужна дополнительная таблица

в которой всё и должно храниться

Зачем дублировать информацию?


Сообщение отредактировал web-coder: 20 Июнь 2019 - 19:10

  • 0

#12 MattCutts
MattCutts
  • Пользователь
  • 96 сообщений
  • Репутация: 5

Отправлено 31 Июль 2019 - 18:03

1. Использовать формат JSON   2. Использовать NoSQL

 


Сообщение отредактировал MattCutts: 31 Июль 2019 - 18:03

  • 0

#13 bor10811
bor10811
    Topic Starter
  • Пользователь
  • 88 сообщений
  • Репутация: 3

Отправлено 03 Август 2019 - 22:46

А вы подумали как в таком случае делать выборку по условию?

А ведь верно! Действительно не подумал. Но это уже не важно, я выбрал вариант создания дополнительной базы данных. 


  • 0

#14 MattCutts
MattCutts
  • Пользователь
  • 96 сообщений
  • Репутация: 5

Отправлено 03 Август 2019 - 22:53

Зачем дублировать информацию?
денормализация хороший способ повысить производительность
  • 0

robot
robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Похожие темы
  Название темы Автор Статистика Последнее сообщение

× Быстрый вопрос
Пользователь месяца
Rodiola Rodiola 1-й за Август
Очков активности: 1 552 3 темы, 106 сообщений, 9 баллов репутации
Сайт: rukodelkovo.ru
ТОП самых активных за этот месяц
  • Фотография MattCutts
    #1

    MattCutts (dmitrylee.ru)
    Очков активности: 480 5 тем, 65 сообщений, 4 балла репутации

  • Фотография Андрей WPM
    #2

    Андрей WPM (wpmaster.kz)
    Очков активности: 378 Вне конкурса за определение пользователя месяца

  • Фотография Chaser
    #3

    Chaser (majento.ru)
    Очков активности: 33 1 тема, 8 сообщений, 2 балла репутации

  • Фотография lena220678
    #4

    lena220678
    Очков активности: 33 1 тема, 19 сообщений, 1 балл репутации

  • Фотография BLIK
    #5

    BLIK
    Очков активности: 27 0 тем, 18 сообщений, 1 балл репутации

  • Фотография Rodiola
    #6

    Rodiola (rukodelkovo.ru)
    Очков активности: 22.5 Вне конкурса за определение пользователя месяца

  • Фотография maxnik
    #7

    maxnik (konovalovpavel.ru)
    Очков активности: 21 0 тем, 7 сообщений, 2 балла репутации

  • Фотография Constantine
    #8

    Constantine (constantine.video.blog)
    Очков активности: 18 2 темы, 6 сообщений, 1 балл репутации

  • Фотография Megoydagi
    #9

    Megoydagi (24ho.ru)
    Очков активности: 16.5 1 тема, 8 сообщений, 1 балл репутации

  • Фотография NataliaAntalia
    #10

    NataliaAntalia (zdorovemedicina.ru)
    Очков активности: 15 0 тем, 10 сообщений, 1 балл репутации

  • Показать весь ТОП 10
Поддержите форум! =)
Апдейты
  • Яндекс ИКС: 27.08.2019
  • Яндекс выдача: 15.09.2019
Топ 5 участников по репутации

Оформление форума – IPBSkins.ru