Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Другие СУБД Новый топик    Ответить
 DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
pamir
Member [скрыт]

Откуда:
Сообщений: 27434
Мне пока не понадобилось, но интерес возник.
Если в таблице есть инкрементное поле (generated), то после вставки последнее сгенерированное значение можно получить с помощью IDENTITY_VAL_LOCAL().
Однако, если у меня на триггере будет вставляться другая строка в другую таблицу тоже с генерацией (ну, напиример, логирование идет или что-то вычисляется), то этой функцией я получу последнее значение в последней таблице. Остальные будут безвозвратно для меня потеряны.
Я понимаю, что можно сделать select max()..., но в многопользовательской системе это место потенциальной ошибки.
31 янв 08, 02:44    [5224452]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
Andron
Member

Откуда: Cherepovets
Сообщений: 1816
А зачем нужно знать сгенерированное значение? Я думал что автогенераторы следует использовать для обеспечения уникальности в первичных ключах. И зачем надо получать сгенерированное значение, кроме того что он дает уникальный ключ?
31 янв 08, 10:44    [5225339]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
GKS_Samara
Member

Откуда: Самара
Сообщений: 2791

Andron

А зачем нужно знать сгенерированное значение? Я думал что автогенераторы
следует использовать для обеспечения уникальности в первичных ключах.


Некоторое странные люди требуют, чтобы в гриде курсор вставал на только что созданную запись.
А без знания последней- никак.

По вопросу первоначальному- надо таки сначала генерить значение, а потом вставлять запись.
В триггере, соответственно, надо его генегить, только если поле пустое.

--
Алексей

Posted via ActualForum NNTP Server 1.4

31 янв 08, 10:49    [5225394]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2960
GKS_Samara

Некоторое странные люди требуют, чтобы в гриде курсор вставал на только что созданную запись.
А без знания последней- никак.


А зачем вообще в гриде показывать все записи? А если их несколько миллионов? По-моему, не для этого SQL сервера придумывали.
31 янв 08, 11:43    [5225938]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
pamir
Member [скрыт]

Откуда:
Сообщений: 27434
1. Совсем не обязательно для грида. Я создал запись. Дальше хочу с ней что-то делать. Например, в той же транзакции заполнить дочернюю таблицу. Нужна ссылка на родителя. Это как пример. Можно ещё что-нибудь сообразить. Случаи может и не очень частые, но и не эксклюзивные.
2. Как его можно сгенерить, если в DerbyDB нет сиквенсов? Если б были, я б не спрашивал.
31 янв 08, 12:56    [5226521]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
pamir
Member [скрыт]

Откуда:
Сообщений: 27434
Garrick
GKS_Samara

Некоторое странные люди требуют, чтобы в гриде курсор вставал на только что созданную запись.
А без знания последней- никак.


А зачем вообще в гриде показывать все записи? А если их несколько миллионов? По-моему, не для этого SQL сервера придумывали.
Немного оффтопа, но... Кто сказал, что показываются ВСЕ? Могут показываться 10 из миллиона. Создается запись, которая подпадает под фильтр. Хочется на неё встать.
Но опять же, это не мой случай, хотя и тоже возможный.
31 янв 08, 12:58    [5226544]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
GKS_Samara
Member

Откуда: Самара
Сообщений: 2791

pamir

2. Как его можно сгенерить, если в DerbyDB нет сиквенсов? Если б были, я б не спрашивал.


:-[ ~ ]
Это как? Как жить-то теперь? А конференция по этому чуду есть? Лучше туда, наверное, Жаба тут вобще не виноватая...

--
Алексей

Posted via ActualForum NNTP Server 1.4

31 янв 08, 13:40    [5226909]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
pamir
Member [скрыт]

Откуда:
Сообщений: 27434
GKS_Samara
:-[ ~ ]
Это как? Как жить-то теперь? А конференция по этому чуду есть? Лучше туда, наверное, Жаба тут вобще не виноватая...
Вообще-то DerbyDB ещё называют java db, т.к. она родная, написана на java

Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0

Хоть БД это и не сама джава, но куда ж ещё идти...
31 янв 08, 13:44    [5226947]     Ответить | Цитировать Сообщить модератору
 Re: DerbyDB. Как люди живут с IDENTITY_VAL_LOCAL?  [new]
Andron
Member

Откуда: Cherepovets
Сообщений: 1816
Скажу даже больше для тех кто не в курсе: Sun включает JavaDB (она же Derby) в JDK6. Ибо джава.
1 фев 08, 11:01    [5231152]     Ответить | Цитировать Сообщить модератору
Все форумы / Другие СУБД Ответить