|
|
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Подскажите как получить значение ID-генерируемое генератором после добавления записи? Использую объект отображения данных TreeView. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 09:36:31 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Никак. ID забирай на клиента, а потом ... В триггере ОБЯЗАТЕЛЬНО IF (NEW.ID IS NULL) THEN NEW.ID = GEN_ID(GEN_NAME, 1); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 09:39:44 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Есть возможность использования поля-генератора, тогда можешь контролировать его значение с клиета в момент добавление ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 09:51:45 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Как узнать значение поле-генератора? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 11:30:48 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
А что такое "поле-генератор" ? Есть поле, есть генератор, вещи разные. Но иногда :) значение генератора записывают в поле... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 11:39:49 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Не изобретайте велосипед. Добавление новых значений в таких случаях логично делать через суспенд процедуру, которя после вставки возвращает все поля вставленной сущности, и использовать из всех других процедур или прикладных прог только эту для добавления записи. И ни каких выделений ID в триггерах - это подсознание базы, а нам нужно с данными сознательно работать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 11:42:02 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Сделай наоборот - сгенерируй ID, а потом насильно его запиши в таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 12:50:37 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Таблица имеет структуру дерева и поэтому в триггере формируется ID. Мне и нужно узнать значение ID новой записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 14:14:25 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Может быть тебе нужно последнее (текущее) значение генератора? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 14:17:17 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
Поле генератор - я имел ввиду указать для IBQuery.GeneratorField и работать с ним, тогда ты сможешь сразу получить значение твоего поля после добавления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 16:06:54 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
>Voha Нет. В этом случае значение генератора сначала получается, а потом вставляется. "Неявно", естественно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2003, 16:19:14 |
|
||
|
Значение ID после добавления
|
|||
|---|---|---|---|
|
#18+
никто не пытался создать процедуру, которая будет при помощи генератора выдавать значения? Написать триггер, как советует Denis Uskov и радоваться жизни. если хочется чтоб известно было на клиенте, генерируем с помощью процы новое значение, и вставляем его с клиента в базу. Если хочется автомат, то передаем null и триггер отрабатывает. только не надо мудрить с получением значений генератора ПОСЛЕ того как отработал триггер... Ведь другой клиент мог уже изменить значение генератора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2003, 03:24:32 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32241162&tid=1580089]: |
0ms |
get settings: |
4ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
42ms |
get topic data: |
5ms |
get forum data: |
1ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 187ms |
| total: | 278ms |

| 0 / 0 |
