При добавлении данных в таблицу они не отображаются во внешнем ключе другой таблицы. - PullRequest
0 голосов
/ 21 сентября 2011

У меня есть таблица COURSE, которая имеет два атрибута COURSECODE (PK) и COURSENAME

У меня также есть другая таблица COURSEUNIT, которая имеет три атрибута COURSECODE (PK) (FK) UNITCODE (PK) (FK) и CREDIT.

Когда я добавляю данные в таблицу COURSE, она не добавляет данные в таблицу COURSEUNIT. В чем проблема?

Ответы [ 4 ]

4 голосов
/ 21 сентября 2011

Внешний ключ не означает, что вы получаете одну строку для каждого ключа в ссылочной таблице.Это только означает, что любая строка в таблице COURSEUNIT должна ссылаться на существующую строку в COURSE.

2 голосов
/ 21 сентября 2011

Нет проблем, вот как работает SQL, вам понадобится второй оператор INSERT для заполнения таблицы COURSEUNIT.

2 голосов
/ 21 сентября 2011

Это две разные таблицы, и вы должны управлять отношением, вы должны сначала вставить данные в таблицу курса, затем взять идентификатор, который будет сгенерирован из этой вставки, и сделать еще одну вставку в таблицу кодов курса, они не будутвставляется автоматически.

1 голос
/ 21 сентября 2011

Вам нужно написать запрос для заполнения второй таблицы, как еще он будет знать, какие значения помимо FK добавить в него? Дочерние таблицы не заполняются автоматически ни в одной базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...