|
|
|
локально представлени и неуникальные записи
|
|||
|---|---|---|---|
|
#18+
есть таблица, в которой могут быть абсолютно равные записи (по всем полям), (ненормально конечно, но "сложившаяся технология") редактирование таблици осуществляется через локальное представление, ключевыми полями назначены все поля дак вот при редактирование неуникальных записей происходит ошибка уникальности и изменяются все таковые записи - это впрочем понятно почему. догадываюсь что правильней при обнаружение неуникальности непроводить изменений, но узнаю об этом уже при выполнение tableupdate ошибка возвращается, но изменения проводятся догадываюсь, что можно обернуть tableupdate в транзакции и откатить по ошибке. а нет ли более изящных решений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2007, 10:25 |
|
||
|
локально представлени и неуникальные записи
|
|||
|---|---|---|---|
|
#18+
Ничего изящнее введения суррогатного ключа (дополнительное поле-первичный ключ) в голову не приходит. Сам много раз пользовался: в уже давно рабочие базы вводил суррогатный ключ, что позволяло однозначно идентифицировать записи, например, для передачи по интернету не всей базы, а только изменённых строк для критичных по скорости филиалов предприятия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2007, 10:47 |
|
||
|
локально представлени и неуникальные записи
|
|||
|---|---|---|---|
|
#18+
1. сделать ключи - уникальные ID 2.да, транзакция и откат в случае ошибки Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2007, 10:50 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34845910&tid=1588703]: |
0ms |
get settings: |
6ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 329ms |

| 0 / 0 |
