|
|
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
Извиняюсь за непрофессионализм. Не работал с базами данных, а тут пришлось. Вопрс следующий. На сервере есть две таблицы. Формат данных такой: 1) tbl1.счетчик, tbl1.txt. 2) tbl2.long, tbl2.txt. Связь: tbl1.счетчик= tbl2.long. Цель – добавить записи в таблицу tbl1 и tbl2. Записи связанные, поэтому при добавление данных в tbl2 в поле tbl2.long должно передаться значение счетчика tbl1.счетчик. Как это делается? Мне видится решение состоящее из нескольких операций. Первая операция – создать запись в tbl1. Вторая операция – получить значение счетчика вновь созданной записи поля tbl1.счетчик. Сразу вопрос, а по какому признаку отфильтровать эту запись для получения данных, ведь значение счетчика мы незнаем? Понимаю, что вопрос элементарный и имеет простое решение. Подскажите какое. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 01:35:12 |
|
||
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
малыш1234, а зачем вам такой велосипед с квадратными колёсами дублировать данные? ...или это вы так замысловато описали свою попытку создать внешний секвенс (т.е. таблиц, подобных tbl2, у вас на самом деле много, и все используют единую нумерацию, получаемую из tbl1)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 06:16:00 |
|
||
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
tanglir (т.е. таблиц, подобных tbl2, у вас на самом деле много, и все используют единую нумерацию, получаемую из tbl1)? Именно так. Ну и еще конечно по причине того, что база то реляционная. tbl1 - главная таблица, tbl2 – подчиненная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 09:16:41 |
|
||
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
малыш1234, ну например через before insert триггер на tbl2, в нём: -вставка записи в tbl1 -получение ид этой записи посредством last_insert_id -запись полученного значения в new.long ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 10:38:43 |
|
||
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
Ауу! Люди! Должен же быть простой способ добавления связных записей в таблицы. Подскажите, куда копать? Плиззз… :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 10:39:25 |
|
||
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
Если связь один ко много (а твой текст кагбэ намекает) - то одно решение ты родит сам, второе (с триггером) тебе подсказали. Оба решения - простые. Но первое более надёжное. Особенно если его оформить хранимой процедурой. малыш1234по какому признаку отфильтровать эту запись для получения данных, ведь значение счетчика мы незнаем? Во-первых, ты прекрасно знаешь, что именно только что записывал - на этом знании можно построить вполне себе нормальный фильтр. Во-вторых, есть LAST_INSERT_ID(). Но только при условии, что в первую таблицу добавляется строго одна запись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 10:57:00 |
|
||
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
AkinaЕсли связь один ко много (а твой текст кагбэ намекает) - то одно решение ты родит сам, второе (с триггером) тебе подсказали. Оба решения - простые. Но первое более надёжное. Особенно если его оформить хранимой процедурой. малыш1234по какому признаку отфильтровать эту запись для получения данных, ведь значение счетчика мы незнаем? Во-первых, ты прекрасно знаешь, что именно только что записывал - на этом знании можно построить вполне себе нормальный фильтр. Во-вторых, есть LAST_INSERT_ID(). Но только при условии, что в первую таблицу добавляется строго одна запись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 11:12:56 |
|
||
|
Добавление связанных записей в таблицы
|
|||
|---|---|---|---|
|
#18+
AkinaЕсли связь один ко много (а твой текст кагбэ намекает) - то одно решение ты родит сам, второе (с триггером) тебе подсказали. Оба решения - простые. Но первое более надёжное. Особенно если его оформить хранимой процедурой. малыш1234по какому признаку отфильтровать эту запись для получения данных, ведь значение счетчика мы незнаем? Во-первых, ты прекрасно знаешь, что именно только что записывал - на этом знании можно построить вполне себе нормальный фильтр. Во-вторых, есть LAST_INSERT_ID(). Но только при условии, что в первую таблицу добавляется строго одна запись. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2015, 11:13:38 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38956962&tid=1833211]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 194ms |
| total: | 312ms |

| 0 / 0 |
