вот мой problemI этого код, чтобы сделать переменную автоинкрементную в базе данных Oracle:оракул автоинкремент с последовательностью и триггером не работает правильно
CREATE TABLE Korisnici
(
id_korisnika number PRIMARY KEY,
ime_korisnika varchar2(200),
prezime_korisnika varchar2(200),
broj_telefona varchar2(30),
adresa_korisnika varchar2(400)
)
/
create sequence test_seq
start with 1
increment by 1;
CREATE OR REPLACE TRIGGER test_trigger
BEFORE INSERT ON Korisnici FOR EACH ROW
BEGIN
SELECT test_seq.NEXTVAL
INTO :NEW.id_korisnika
FROM DUAL;
END;
/
Если я начну с главной страницей все прекрасно работают, у меня есть номера как 1 , 2,3,4 .... Закройте программу, откройте ее снова, поэтому соединение базы данных оракула снова запущено. Я добавляю еще один вход, и у меня есть цифры, такие как 20,21,22,23 ... Я поместил программу на свой Android и подключился с другого устройства, когда я ввожу одного пользователя, у меня есть 30,31,33,34 ...
Почему это происходит? И как это исправить?
Спасибо
EDIT:
Вот мой прок для чтения данных из базы данных
CREATE OR REPLACE PROCEDURE Citanje_korisnika(p_rc OUT SYS_REFCURSOR)
AS
BEGIN
OPEN p_rc
FOR SELECT *
FROM Korisnici;
END;
Я немного новичок в базе данных Oracle.
Если вы совершаете каждую транзакцию, последовательность непрерывно увеличивается. Что с этим не так? – rics