Внешний ключ в sqlite3. Каскадирование. (Хочу, чтобы автоматически обновлялись/удалялись ссылающиеся записи)

Модератор: Модераторы разделов

_petya_
Сообщения: 53

Внешний ключ в sqlite3. Каскадирование.

Сообщение _petya_ »

Есть две таблицы table1 и table2. Я хочу, чтобы table2 содержала поле, ссылающееся на первичный ключ table1, и при обновлении/удалении table1 автоматически обновлялись/удалялись записи table2.
С базой я работаю через утилиту sqlite3.
Таблицы я создаю следующим образом:
create table table1 ('name' CHAR(100) PRIMARY KEY);
create table table2 ('t2_name' CHAR(100) PRIMARY KEY REFERENCES table1(name) ON UPDATE CASCADE ON DELETE CASCADE);
Я заполняю таблицы и обновляю одну из записей table1, на первичный ключ которой ссылается одна из записей table2. При этом запись из table2 не изменяется. Что я делаю не так?
Спасибо сказали:
mix1m
Сообщения: 187
ОС: openSUSE 11.2

Re: Внешний ключ в sqlite3. Каскадирование.

Сообщение mix1m »

я не знаток sqllite, но наверняка там должно быть что-то про foreign key и constraint, но ручаться не буду, ибо) ну и наличие двух таблиц, в каждой по одной колонке, причем во второй есмь первичный ключ, он же внешний (причем не заданный)...бррр.. впечатляет:)

А вообще такие вопросы хорошо спрашивать на форуме SQL.ru, чего Вам и советую
Попытка - первый шаг к провалу (с) Гомер
Спасибо сказали:
_petya_
Сообщения: 53

Re: Внешний ключ в sqlite3. Каскадирование.

Сообщение _petya_ »

mix1m писал(а):
30.01.2009 13:05
я не знаток sqllite, но наверняка там должно быть что-то про foreign key и constraint, но ручаться не буду, ибо) ну и наличие двух таблиц, в каждой по одной колонке, причем во второй есмь первичный ключ, он же внешний (причем не заданный)...бррр.. впечатляет:)

А вообще такие вопросы хорошо спрашивать на форуме SQL.ru, чего Вам и советую


Честно говоря, сейчас подумал, что в данном случае не имеет значения используемая СУРБД.

Из первой таблицы я при создании темы исключил все колонки, кроме ключевой, ибо для решения проблемы они не важны. Вторая таблица действительно содержит только одну колонку. В моем приложении первая таблица - это пользователи приложения, вторая - заявки пользователей на участие в мероприятии. Пока кроме факта наличия заявки доп данных не требуется, но в дальнейшем таблица 2 может расшириться.

Спасибо, сейчас задам вопрос и там.
Спасибо сказали: