|
|
|
Связывание таблиц
|
|||
|---|---|---|---|
|
#18+
Добрый вечер Есть таблицы, в которых содержатся статьи. В каждой статье может быть несколько картинок. Для хранения данных о картинках есть таблица images (imageid#, высота, ширина, подпись, положение) Для связи статьи и картинок нужна связующая таблица Вижу два варианта: каждой таблице поставить в соотвествие свою таблицу texts => texts_images, news => news_images, и т.д. со структурой texts_images(textid,imageid) где textid - идентификатор статьи, imageid - идентификатор картинки сделать одну таблицу textimages (table,textid,imageid) где table - таблица, в которой лежит статья, textid - идентификатор статьи, imageid - идентификатор картинки Заранее спасибо, Сергей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2006, 19:38 |
|
||
|
Связывание таблиц
|
|||
|---|---|---|---|
|
#18+
fred123 Есть таблицы, в которых содержатся статьи. В каждой статье может быть несколько картинок. Но каждой картинке соответсвует одна статья, так? Если так, то таблица статей text (textid, name) а для хранения данных о картинках есть таблица images, которая примет вид: (imageid#, высота, ширина, подпись, положение,TEXTID). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2006, 22:24 |
|
||
|
Связывание таблиц
|
|||
|---|---|---|---|
|
#18+
Vasiliyp fred123 Есть таблицы, в которых содержатся статьи. В каждой статье может быть несколько картинок. Но каждой картинке соответсвует одна статья, так? Если так, то таблица статей text (textid, name) а для хранения данных о картинках есть таблица images, которая примет вид: (imageid#, высота, ширина, подпись, положение,TEXTID). Т.е. в таблицу images добавить два поля: table (таблица, где лежит статья) и textid (соответственно идентификатор статьи в этой таблице) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.01.2006, 23:58 |
|
||
|
Связывание таблиц
|
|||
|---|---|---|---|
|
#18+
fred123 Т.е. в таблицу images добавить два поля: table (таблица, где лежит статья) и textid (соответственно идентификатор статьи в этой таблице) Ага. Только проблемы будут с выборкой, попробуй статьи объединить в одну таблицу, зачем несколько таблиц, может проще в таблицу статей добавить просто признак к чему относится статья. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2006, 08:50 |
|
||
|
Связывание таблиц
|
|||
|---|---|---|---|
|
#18+
Vasiliyp Ага. Только проблемы будут с выборкой, попробуй статьи объединить в одну таблицу, зачем несколько таблиц, может проще в таблицу статей добавить просто признак к чему относится статья. Какие проблемы? Скорость? А насчет объединения статей в одну таблицу, то это невозможно. У разных статей - разный формат, соотвественно в таблицах разное число атрибутов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2006, 14:58 |
|
||
|
Связывание таблиц
|
|||
|---|---|---|---|
|
#18+
Возможно. Общие атрибуты всех "статей" вынести в отдельную таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2006, 16:29 |
|
||
|
Связывание таблиц
|
|||
|---|---|---|---|
|
#18+
fred123 Какие проблемы? Скорость? Да нет на скорость это влиять никак не будет, а вот попробуй написать простой запрос к базе (не используя хранимых процедур и курсоров), в котором в зависимости от значения в первой таблице поля table подставлять в запрос реальное имя таблицы. Когда будет одна таблица на статьи и вторая на картинки то все будет просто и летать будет: Код: plaintext 1. fred123 А насчет объединения статей в одну таблицу, то это невозможно. У разных статей - разный формат, соотвественно в таблицах разное число атрибутов. А что мешает, ты же поля сразу знаешь и типы статей, заведи таблицу со всеми атрибутами, просто для статей у которых нет такого атрибута оставляй поле пустым (null). ИМХО я бы так и поступил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2006, 18:47 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33467739&tid=1545485]: |
0ms |
get settings: |
4ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
154ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 438ms |

| 0 / 0 |
