0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 28
MySQL

Как составить схему базы данных для чата и на чем?

08.05.2016, 23:07. Показов 2822. Ответов 3

Студворк — интернет-сервис помощи студентам
Суть такая: необходимо сделать чат, в котором можно также обмениваться файлами. Пример на скрине. Как сделать без файлов я понимаю(используя sql). Но как сделать так, чтоб одним запросом можно было выбрать сразу например 100 последних сообщений между двумя пользователями, причем, если в каком-то сообщении есть файлы, то их тоже нужно отобразить?
Если в виде строки хранить файлы для одного сообщения, то я думаю это будет не нормализованный вид? Хотя на первых взгляд такое решение кажется самым простым. Но в таком случае непонятно, как для каждого файла одним запросом извлекать его путь на сервере?

У меня нет идей как совместить 3 сущности: пользователи, текстовые сообщения, файлы в одну выборку, один запрос.
Может в этой задаче лучше использовать nosql решения? Данные будут хранится приближенно к модели.
Если кто сталкивался с подобной проблемой, буду рад услышать советы, ссылки, предложения.

Спасибо.
Скрин:
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.05.2016, 23:07
Ответы с готовыми решениями:

Составить схему Базы данных
На основании приведенных данных составить логическую схему БД и отобразить ее в виде ER модели В библиотеке есть отделы. В каждом...

Как составить запрос для мини Базы Данных SELLS?
Имеется база данных состоящая из трех таблиц: 1. Фирма={Фирма, Страна}. В столбце Фирма находятся поставщики и заказчики 2....

Как лучше изменить схему данных для базы "Агенство недвижимости"
Sql ругается на заполнение ячейки "Код клиента/владельца" в таблицы Договоры, оно и понятно - он думает, что клиент и владелец одно и тоже...

3
3 / 3 / 2
Регистрация: 06.01.2015
Сообщений: 31
09.05.2016, 10:16
Обычно для файлов я использую отдельную таблицу. А если всё хотите в одной таблице, то можно к каждому сообщению дополнительное поле file приделать в котором будет название файла, например 123.doc. Если поле не пустое, выводите ссылку на файл, например userdocs/123.doc . Если же файлов для одного сообщения может быть больше одного, то можно через запятую занести их в базу, потом перебирать через массив например. В базе храните только названия документов, а путь пускай у всех будет общий, чтобы через php подставлять при выводе.
1
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 28
09.05.2016, 14:29  [ТС]
То что вы сказали это понятно. Я вот думаю использовать sql или nosql (mongoDB) базу данных для такого вида сервиса.
0
3 / 3 / 2
Регистрация: 06.01.2015
Сообщений: 31
09.05.2016, 15:00
sql же хватит с головой.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.05.2016, 15:00
Помогаю со студенческими работами здесь

SybaseIQ : построить схему данных для базы
Учитывая что под sybase я раздела не нашёл создам тему здесь :) Есть SybaseIQ, на нём очень много табличек и баз, никаких схем данных в...

Как узнать схему базы данных?
Подскажите пожалуйста вот мне дали готовую программу сделана на базе данных SQL мне надо посмотреть схему данных где и как ее посмотреть? ...

Как и в чем правильно составить схему навигации между окнами программы
Подскажите как правильно составить схему навигации между окнами программы? Какой инструментарий используется сейчас в основном для...

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru