Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
FB 2.5 Таблица небольшая состоящая из имен и индекса для имени: Код: plaintext 1. 2. 3. Клиент берет базовое имя и присовокупляет к нему индекс (к примеру, получается колос-1 ), после значение индекса в строке клиентская программа увеличивает на единицу. Это как сейчас сделано. Для каждой строки индекс независим. Хотелось бы чтобы не клиент занимался индексами, а инкрементировал сервер. Но как? Соображалки не хватает чтобы придумать. Триггер на строку... Похоже на бредятину. ХП? А тогда, вроде как, ничего и не меняется: что update с клиента, что вызов процедуры оттуда же, разницы особой не видно. Может чего посоветуете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 19:55 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Клиент 1 читает индекс, получает, скажем, 10. Задумывается. Клиент 2 читает индекс, получает те же 10. Быстро решает, что это конец света и инкрементирует до 11. Коммит! Клиент 1, слоупочина, отмирает и решает тоже инкрементировать индекс. И дальше уже можно гадать: это был снэпшот и вскинется исключение по поводу модификации изменённой записи, или же это всё в разных транзакциях было и мы поимеем в БД левую информацию - 11 вместо 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 21:24 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Предлагаю Вам осветить более подробно вот этот момент: "Клиент берет базовое имя и присовокупляет к нему индекс". Для чего это делается в конечном итоге? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 21:33 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
SAN_01_08Хотелось бы чтобы не клиент занимался индексами, а инкрементировал сервер. Но как?Приведите пример входных данных (в виде create table + insert-команд) и конечного (требуемого) результата. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 21:37 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. Клиент читает выбранное юзером имя и делает конкатенацию из имени и индекса. Получается, например, "Серна-1". При выходе из формы где добавляется объект с этим именем, в соответствующей строке таблицы имен меняется индекс, увеличенный на единицу, самим клиентом: Код: plsql 1. Следующий вызов имени и конкатенация должна привести к другому имени - "Серна-2". Если бы можно было иметь дырки в индексах, то и вопроса не было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:00 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
SAN_01_08Клиент читает выбранное юзером имя и делает конкатенацию из имени и индекса. то есть, приложение не многопользовательское? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:06 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Полученное составное имя используется совсем в другой таблице никак не связанной с таблицей имен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:08 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Я вот и хочу чтобы не клиент этой ерундой занимался, а сервер (так было заявлено в первом моем пост). Что будет с БД дальше не ведомо и поэтому не хочу заморачиваться на монопольный режим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:10 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
SAN_01_08Я вот и хочу Перехоти. У тебя нет выбора. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:19 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Выбор всегда есть :) Видно, делится не хотите шибко секретной информацией. ай-яй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:21 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Код: sql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:24 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
SAN_01_08Я вот и хочу чтобы не клиент этой ерундой занимался, а сервер без разницы. генератор выдает сквозные номера, а у вас в столбце ind неуникальные значения. Генератор сам по себе работает через монопольный доступ, так и тут придется "монополизировать" выдачу номеров. Другое дело, что для "несквозных" номеров у сервера нет средств. У вас уже спрашивали, зачем нужен вот этот столбец ind. Если он нужен только для сортировки в пределах name, тогда сделайте столбец ind типом timestamp, и просто туда записывайте current_timestamp, принудительно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:27 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
Пардон, разумеется Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:32 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
MrCat , спасибо. Все почти понятно. Если не сложно, поясни, пож., как "уникальный замок" сработает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:35 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
MrCat, и всё это заменимо всего лишь одним оператором - UPDATE RETURNING, насколько я вообще могу понять "задачу" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:39 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
kdvзачем нужен вот этот столбец ind. Вроде бы уж объяснил - другого объяснения то нет все равно. Представьте себе, что имена в этом проекте даются так же как это делалось во времена монархов. К примеру, Людовик V, Людовик VI и т.п. Вряд ли у них были дырки в этих номерах. Здесь та же история. Индексы нужны только для подстановки к базовым именам. Сортировка ни при чем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:42 |
|
||
|
Атоинкремент отдельно в каждой строке.
|
|||
|---|---|---|---|
|
#18+
hvladMrCat,и всё это заменимо всего лишь одним оператором - UPDATE RETURNING, Во, уже какие-то все же варианты есть. Замечательно. Иногда пинка просто получаешь и как-то нужная картинка складывается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2015, 22:46 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38867259&tid=1563067]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
176ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 287ms |

| 0 / 0 |
