@agressor221
Программист новичОк

Как в столбец SQL-таблицы записать массив?

Как можно через INSERT в столбец SQL-таблицы записать массив?
  • Вопрос задан
  • 403 просмотра
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
надо сделать еще одну таблицу из двух полей.
вставить данные в первую, получить id
и записать во вторую столько строк, сколько элементов в массиве
в виде полученный выше id - элемент массива

так работают базы данных
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
sergey-gornostaev
@sergey-gornostaev Куратор тега SQL
Седой и строгий
Не надо в столбец записывать массив, это идёт в разрез с принципами работы реляционных баз данных и нарушает нормализацию.
Ответ написан
@mletov
Можно запихнуть в поле, например, JSON или XML. Но если вам нравится подобный подход, то лучше сразу посмотреть в сторону NoSql, скажем, какой-нибудь монги, и не мучить реляционные БД.
Ответ написан
Комментировать
@bacon
Сериализовать в строку, использовать специальный тип или сделать по правилам реляционных баз, создать таблицу для этих данных, связанную с первой. Все это зависит от самых данных, от того как с ними надо работать, да и от возможностей СУБД
Ответ написан
Комментировать
Newto
@Newto
$a = ['first' => 1, 'second' => 2, 'third'];
$a = json_encode($a);

Записываете $a в базу. А когда достаете, делаете
$a = json_decode($a);
и получаете свой массив.

Так, пожалуй, проще всего.

Если этот ответ вам покажется верным, то отметьте решением ответ от mletov, он написал, по сути, то же самое, но с упоминанем xml варианта.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы