Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / JayBird & autocommit / 2 сообщений из 2, страница 1 из 1
30.01.2004, 20:34
    #32394278
kostas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JayBird & autocommit
Обнаружил странную проблему:

имеем: Firebird 1.5 beta5-8,1.X ,JayBird 1.x ,jdk 1.4.2_02 (пробовал
практически ВСЕ версии Firebird и JayBird)

две таблицы (master-detail) связанные foreign key, например

CREATE TABLE DEPARTMENT (
ID INTEGER NOT NULL,
NAME VARCHAR (255) CHARACTER SET WIN1251 COLLATE WIN1251);

CREATE TABLE EMPLOYEE (
ID INTEGER NOT NULL,
NAME VARCHAR (255) CHARACTER SET WIN1251 COLLATE WIN1251,
DEPARTMENT_ID INTEGER);

ALTER TABLE DEPARTMENT ADD PRIMARY KEY (ID);
ALTER TABLE EMPLOYEE ADD PRIMARY KEY (ID);

ALTER TABLE EMPLOYEE ADD FOREIGN KEY (DEPARTMENT_ID) REFERENCES DEPARTMENT (ID);

Далее на Jave

......
driver = DriverManager ....
Properties connectionProperties = new Properties ();
connectionProperties.put ("user", user);
connectionProperties.put ("password", password);
Connection c = driver.connect (databaseURL, connectionProperties);
c.setAutoCommit(false);
Statement s = c.createStatement ();
s.executeUpdate ("INSERT INTO DEPARTMENT(ID,NAME)VALUES(1,'Sales')");
.....
s.executeUpdate ("INSERT INTO EMPLOYEE(ID,NAME,DEPARTMENT_ID)VALUES(2,'John Smith',1)");


и вот тут я ловлю exception о том, что foreign key violaton.
если autocommit установить в true , то все работает.

Кто-нибудь сталкмвался с этим?
...
Рейтинг: 0 / 0
30.01.2004, 21:36
    #32394296
кажется
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JayBird & autocommit
кажется, вопрос не совсем про джаву и автокоммит...

а про то как в транзакциях эти констрайнты проверяются..
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / JayBird & autocommit / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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