|
|
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
CREATE TABLE T1 ( ID INTEGER NOT NULL, FK INTEGER NOT NULL ); CREATE TABLE T2 ( ID INTEGER NOT NULL, FK INTEGER NOT NULL ); ALTER TABLE T1 ADD CONSTRAINT PK_T1 PRIMARY KEY (ID); ALTER TABLE T2 ADD CONSTRAINT PK_T2 PRIMARY KEY (ID); ALTER TABLE T1 ADD CONSTRAINT FK_T1 FOREIGN KEY (FK) REFERENCES T2 (ID); ALTER TABLE T2 ADD CONSTRAINT FK_T2 FOREIGN KEY (FK) REFERENCES T1 (ID); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 14:47 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 14:51 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
нет. циклическая ссылка. что раньше - курица или яйцо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 15:02 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Ну и тема называется "Есть ли способ в T1 вставить запись?" p.s. После Нового Года только начал отходить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 15:03 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
kdvнет. циклическая ссылка. что раньше - курица или яйцо? Для интересу: а в какой-нибудь СУБД такое возможно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 15:05 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Вроде Таблоид что-то такое запрашивал, типа, чтобы ссылочная целостность проверялась непосредственно перед коммитом, а до - можно было в "измененных" записях держать любой "мусор". Вроде в Oracle есть такая настройка. С другой стороны, хоть это и изврат, ты можешь в обе таблицы добавить по одной записи ДО наложения ограничений. Потом делать вставку с этими значениями по умолчанию, после чего - update. Путь очень тернистый, чреватый ошибками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 15:24 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
__Avenger__Ну и тема называется "Есть ли способ в T1 вставить запись?" Нету способа. Ибо нефиг. Убери у FK NOT NULL и способ появится. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 15:40 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov> Нету способа. Ибо нефиг. Убери у FK NOT NULL и способ появится. Способ то есть - вставляешь в обе (или одну) таблицы запись с ID "-1" и ссылаешься на нее, потом апдейтишь. То же самое раньше и вместо Null-ов использовали. Но для сегодняшних версий "нефиг" поддерживаю. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 18:59 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамСпособ то есть - вставляешь в обе (или одну) таблицы запись с ID "-1" И получаешь в ответ ошибку нарушения FK. Ты в топике что, читаешь только мои сообщения? olegenty может обидеться. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 19:01 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov> И получаешь в ответ ошибку нарушения FK. Dimitry Sibiryakov> Ты в топике что, читаешь только мои сообщения? Dimitry Sibiryakov> olegenty может обидеться. C чего вдруг ошибку нарушения FK ? Я лишь дополнил ответ olegenty подсказкой о "фиктивной" записи, чтобы не приходилось делать ссылки на "чужие" записи. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 20:00 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамC чего вдруг ошибку нарушения FK ? Я лишь дополнил ответ olegenty подсказкой о "фиктивной" записи, чтобы не приходилось делать ссылки на "чужие" записи. А какая разница между "чужими" записями и "фиктивными"? И что именно ты хотел дополнить в этом ответе: olegentyможешь в обе таблицы добавить по одной записи ДО наложения ограничений. Потом делать вставку с этими значениями по умолчанию, после чего - update. этим: Гаджимуратов Рустамвставляешь в обе (или одну) таблицы запись с ID "-1" и ссылаешься на нее, потом апдейтишь Бог меня побей если я вообще вижу хоть какую-то разницу между этими двумя высказываниями. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 20:07 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Не видишь - значит, и нет, пусть будет по-твоему. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2011, 20:13 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
А в такую? Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 15:27 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
кто тут?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 15:30 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
что-то я не улавливаю смысл такого ФК. наверное, получится вставить 1-1, 2-2 и так далее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 15:30 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
kdv, Надо вот это вставить: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 15:31 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
Ой, ошибся: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 15:32 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
ну не вставится же. при первой вставке 1-2 фк проверит наличие 2-1, а такого еще нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 15:35 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
"Ага, *ля!" - злорадно сказали суровые сибирские мужики. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 16:56 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
__Avenger__Для интересу: а в какой-нибудь СУБД такое возможно? Тынц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 17:07 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
возможно, с deferred fk, когда он проверяется по коммиту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2011, 18:05 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
А планируются ли deffered fk в fb3? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2011, 09:10 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
а зачем? твои извраты реализовывать? :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2011, 09:54 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
kdv, Да мне-то в принципе все равно, я могу и без этого fk жить. Просто с ним бы было логичнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2011, 09:57 |
|
||
|
Если способ в t1 вставить запись?
|
|||
|---|---|---|---|
|
#18+
При такой реализации значит, что в f_from и f_to - это один и тот же объект предметной области. Следовательно, он должен быть вынесен в отдельную таблицу, и именно на неё должен ссылаться FK и из f_from, и из f_to. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2011, 10:40 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=37215759&tid=1563156]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
173ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
80ms |
get tp. blocked users: |
2ms |
| others: | 208ms |
| total: | 507ms |

| 0 / 0 |
