powered by simpleCommunicator - 2.0.44     © 2025 Programmizd 02
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB-2 Вставка 2-х записей одновременно?
6 сообщений из 6, страница 1 из 1
DB-2 Вставка 2-х записей одновременно?
    #32004306
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!!
Я начинающий, поэтому у меня возникла, видимо не очень сложная проблема,
но я ее решить без посторонней помощи не могу.
Суть в следующем:
При вставке записей допустим 2-я пользователями получаеться такая ситуация: -
тригер выдает каждому пользователю один и тотже номер
Вот тело тригера

create trigger Trig no cascade before insert on Tabl
referencing new as n for each row mode db2sql
when (n.Id = 0)
set n.Id = coalesce((select max(Id) from Tabl), 0) + 1;
Соответственно запись сохраняеться у того кто первый успел нажать на кнопку
"Post". У другого человека на экране появляеться надпись типа: "Попытка
сохранения неуникального первичного ключа" или что то в этом духе......

Когда я работал с InterBase все было гораздо проще, я использовал генератор, и
все было ОК. А теперь вот прямо не знаю что делать.......
Пытался с хранимыми процедурами покрутить, но что то у меня ничего
путного не получилось (все время сообщения типа SQL -74748 и без коментариев,
тут я конечно не в силах понять почему не создаеться процедура).
Вот тело процедуры:
CREATE PROCEDURE DB2ADMIN.Proc1 (OUT var0 integer)
LANGUAGE SQL
------------------------------------------------------------------------
-- SQL Stored Procedure
------------------------------------------------------------------------
P1: BEGIN
SET var0=(select PERSONACCOUNT from ERWIN.PERSON_ACCOUNT);
update ERWIN.Person_Account set
ERWIN.Person_Account.PERSONACCOUNT=(PERSONACCOUNT+1);

END P1

Не могли бы вы объяснить, как справиться с данной проблемой?! Или может быть
выслать какиенибудь примеры........


Заранее благодарен Алексей!!!! :0)
...
Рейтинг: 0 / 0
DB-2 Вставка 2-х записей одновременно?
    #32008623
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда я столкнулся с этой проблемой,
я написал хранимую процедуру на Java (я использую версию 6, в которой нет встроенного SQL). Если этот вариант приемлем, пиши сюда AlexVed@psu.ru, вышлю исходник процедуры.
...
Рейтинг: 0 / 0
DB-2 Вставка 2-х записей одновременно?
    #32034281
passm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А тебе обязательно целочисленное число?
Если нет, то воспользуйся полем CHARACTER(13) FOR BIT DATA и функцией GENERATE_UNIQUE()
...
Рейтинг: 0 / 0
DB-2 Вставка 2-х записей одновременно?
    #32034442
Gena G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А перейти на 7.1 нельзя?
...
Рейтинг: 0 / 0
DB-2 Вставка 2-х записей одновременно?
    #32040941
TimberWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
напиши триггер, который делает Update не до, а после вставки ...
...
when(n.id=0)
set(n.id)=select max(n.id)+1 from Tabl
....
...
Рейтинг: 0 / 0
DB-2 Вставка 2-х записей одновременно?
    #32058604
Olle_Up
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
http://promail.kht.ru/olleup/program/stat/db2uniq.htm
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB-2 Вставка 2-х записей одновременно?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]