2015-01-05 3 views
-1

Я новичок в программировании, и я хочу задать вопрос относительно схемы базы данных (я использую SQLite базы данных для разработки Android)Один внешний ключ со ссылкой несколько колонок (Notification Concept)

У меня есть таблица, скажем :

  1. MsMember

    MemberId

    Пароль

  2. MSgroup

    GroupID

    ИмяГруппы

  3. MsAnnouncement

    AnnouncementId

    AnnouncementName

  4. MsComment

    CommentID

    CommentContent

  5. MsTodolist

    TodolistId

    TodolistTitle

И я хочу каждый раз, когда новая строка была вставлена ​​(по крайней мере, один из) всех пяти таблицы выше, он создаст уведомление для пользователя, насколько мне известно, с этой концепцией, я должен создать таблицу чтобы хранить каждую деталь уведомления, а затем показывает ее пользователю.

И мое лучшее мнение до сих пор я создаю таблицу, допустим MsNotification, а затем соединить все пять таблиц с этим MsNotification. Я должен иметь внешний ключ, ссылающийся на каждую таблицу ..

Вопрос: Было бы возможно (и эффективно) иметь столбец с несколькими ссылками?

Пример:

Внешний ключ (SourceId) Со ссылкой MsMember (MemberId),

Внешний ключ (SourceId) со ссылкой MsComment (CommentID),

Внешний ключ (SourceId) со ссылкой MsAnnouncement (AnnouncementId) , и так далее.

или есть ли лучший способ реализовать эту концепцию?

Спасибо заранее

ответ

1

Нет, вы не можете назначить одного внешнего ключа к нескольким столбцам. Но вы можете поместить несколько внешних ключей в одну таблицу

Смежные вопросы