Вопрос

CREATE TABLE1 (
   ID INT NOT NULL PRIMARY KEY
   FOREIGN KEY ID REFERENCES TABLE2 (ID)
)

CREATE TABLE2 (
   ID INT NOT NULL,
   OTHER INT NOT NULL
   PRIMARY KEY (ID, OTHER)
   FOREIGN KEY ID REFERENCES TABLE1 (ID)
)

Table 1 and Table 2 are big tables containing separate sets of information. They have a one-to-one relationship requiring full participation from both sides. Where should I put the foreign key statement? In Table1, Table2, or both? And why?

Это было полезно?

Решение

There is nothing particularly wrong with doing it, however you should put the foreign key in both tables. That means when you insert new values you'll have to start a transaction, do both inserts, then commit the transaction.

I would strongly recommend merging the tables into one table. It will make everything easier.

Другие советы

Id to id relationship is considered . This is a great trick in implementation .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top