powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Два внешних ключа в SQLite
6 сообщений из 6, страница 1 из 1
Два внешних ключа в SQLite
    #37885361
vetsakur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
Работаю с SQLite из-под Qt. Пытаюсь создать таблицу с двумя внешними ключами следующим запросом:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE TABLE favourites (
                             id int AUTO INCREMENT NOT NULL PRIMARY KEY, 
                             menu_id int NOT NULL, 
                             rest_id int NOT NULL, 
                             FOREIGN KEY (menu_id) REFERENCES menus(id) 
                             ON DELETE CASCADE ON UPDATE CASCADE, 
                             FOREIGN KEY (rest_id) REFERENCES restaurants(id) 
                             ON DELETE CASCADE ON UPDATE CASCADE
                             )


Запрос выполняется корректно кроме одного косяка: не создается второй внешний ключ. Просто остается обычным полем.
Перегуглил кучу гайдов и документации, всё вроде корректно. В чем может быть дело?
P.S. Таблицы menus и restaurants к моменту выполнения запроса созданы.
...
Рейтинг: 0 / 0
Два внешних ключа в SQLite
    #37885398
vetsakur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
P.P.S. уже обнаружил что автоинкремент в первичном ключе должен выглядеть так:
Код: sql
1.
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT


Но это к делу не относится, и, соответственно, не помогло.
...
Рейтинг: 0 / 0
Два внешних ключа в SQLite
    #37885402
RXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vetsakur,

Проверьте запрос через утилиту sqlite3.

По умолчанию FK отключены - вы выполняете соотв. прагму?
...
Рейтинг: 0 / 0
Два внешних ключа в SQLite
    #37885438
vetsakur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проверяю через SQLite Studio. Прагма, очевидно, выполнена, ибо вторичные ключи в принципе создаются, но только по одному на таблицу
...
Рейтинг: 0 / 0
Два внешних ключа в SQLite
    #37885486
vetsakur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть подкрепленное фактами подозрение, что косячит SQLite Studio и некорректно отображает ключи
...
Рейтинг: 0 / 0
Два внешних ключа в SQLite
    #37885586
RXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vetsakur,

Я ведь не зря говорю, что надо проверять через sqlite3. Это фирменная консольная утилита.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Два внешних ключа в SQLite
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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