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

start [/forum/topic.php?fid=40&msg=32241153&tid=1580089]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
53ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 272ms |
| total: | 387ms |

| 0 / 0 |
