|
|
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Доброго дня, подскажите пожалуйста, как написать ограничение на таблицу, используя constraints или INDEX. Есть таблица: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. Смысл ограничения: для каждого doctor_id должна быть только одна запись с IS_ICON=true. (другими словами не должно быть такого doctor_id без IS_ICON=true) Написал пока только, что для каждого doctor_id должно быть не более одной записи с IS_ICON=true: Код: plsql 1. 2. 3. 4. 5. Но как написать, что одна-то запись быть должна? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2014, 18:24:06 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Сложно понять ваше ограничение. По-моему здесь нужен table trigger, который бы при каждом INSERT, UPDATE и DELETE решал, кому из докторов приписать IS_ICON=true (если я правильно понял описанное ограничение) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2014, 15:42:29 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Viacheslav_mihalich, 5.3.3. Unique Constraints вам в зубы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2014, 23:05:26 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Я, кстати, когда начал работать с констрэйнтами - это и были constraint unique. Удивительно, что у кого-то не так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2014, 23:06:44 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
На самом деле, тут не все так очевидно, но думать сейчас больно. Поэтому отложим этот вопросец на потом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2014, 23:12:11 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Viacheslav_mihalich, вы опять решаете задачу не стой стороны в таблице DOCTOR должно быть поле icon_id NOT NULL, указывающее (ссылающееся) именно на то DOCTOR_PHOTOS (id), которое назначено иконой. (результат - ссылка на иконку есть, и она одна). всё. хотя имеете право грызть кактус -- написать булеву ф-ю (с exists ... ) и повесить чек c этой ф-й на DOCTOR (что есть хотя бы одна, такая что....) -- в довесок к вашему уникъю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 07:52:03 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Спасибо всем ответившим за предложенные варианты! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 23:24:48 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
йокарный бабай, >>вы опять решаете задачу не стой стороны >>в таблице DOCTOR должно быть поле icon_id NOT NULL, указывающее (ссылающееся) именно на то DOCTOR_PHOTOS (id), которое >>назначено иконой. (результат - ссылка на иконку есть, и она одна). Я бы так и сделал, если бы у каждого доктора была бы только одна фотка, она же иконка. В данном случае у докторов должно быть много фотографий, одна из которых будет иконкой. В любой момент времени можно будет поменять иконку с одной фотки на другую. И она должна быть одна. Так что придется, как вы посоветовали, грызть кактус )). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2014, 18:17:25 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Viacheslav_mihalichйокарный бабай, >>вы опять решаете задачу не стой стороны >>в таблице DOCTOR должно быть поле icon_id NOT NULL, указывающее (ссылающееся) именно на то DOCTOR_PHOTOS (id), которое >>назначено иконой. (результат - ссылка на иконку есть, и она одна). Я бы так и сделал, если бы у каждого доктора была бы только одна фотка, она же иконка. В данном случае у докторов должно быть много фотографий, одна из которых будет иконкой. В любой момент времени можно будет поменять иконку с одной фотки на другую. И она должна быть одна. Так что придется, как вы посоветовали, грызть кактус )).перечитайте и попробуйте понять что написал йокарный бабай ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2014, 19:14:31 |
|
||
|
Написать ограничение на таблицу
|
|||
|---|---|---|---|
|
#18+
Viacheslav_mihalich... у докторов должно быть много фотографий, одна из которых будет иконкой. В любой момент времени можно будет поменять иконку с одной фотки на другую. И она должна быть одна.вариант от йокарный бабай подходит как раз для этой ситуации ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2014, 19:24:26 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=38562016&tid=1998832]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
65ms |
get topic data: |
25ms |
get forum data: |
5ms |
get page messages: |
83ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 433ms |

| 0 / 0 |
