
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
26.06.2003, 07:12
|
|||
|---|---|---|---|
Как достаь ключь после INSERT |
|||
|
#18+
В MSSQL там есть @@INDENTITY которая возаращает значение поля счётчика после операции INSERT. Как в interbase это сделать для поля на которое установлен генератор. С учётом конечно что это не последнее значение генератора, а то значение,т.е. той сесии в которой выполнен INSERT/ НУ в смысле чтобы не получилось что кто то ещё успел сделать инсерт и я получу уже не то значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.06.2003, 09:27
|
|||
|---|---|---|---|
Как достаь ключь после INSERT |
|||
|
#18+
Для обращения к генератору используется функция GEN_ID(<имя генератора>, <шаг приращения>). Пока Вы делаете INSERT в рамках текущей транзакции, к генератору никто обратиться (изменить) не может,тем самым гарантируется иникальность значений. Чтобы вернуть в приложение значение генератора, использую хранимую процедуру, в которой выходному параметру присваиваю значение функции GEN_ID, этот же параметр используется в INSERT. Пользователям запрещаю INSERT, но разрешаю выполнять хранимую процедуру. Пример: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. PS: Переменная mKod в этом примере лишняя... Используй сразу параметр Kod_IN_. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=40&mobile=1&tid=1580326]: |
0ms |
get settings: |
8ms |
get forum list: |
24ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
447ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 234ms |
| total: | 778ms |

| 0 / 0 |
