2017-08-16 49 views
0

我已經在SQL中創建了兩個表。通過PHP將數據插入到SQL表中,並在插入的數據和SQL表中的其他字段之間創建關係

第一個是電影(電影標題,編號,描述,年份)。

第二個是導演(導演姓名,身份證,生日)。

現在我現在要做的第一件事是我可以分別添加一部新電影和一部新導演。所以我們先說我插入一部新電影,然後插入一個新導演。我想要做的是在導演之前插入電影,我希望能夠插入新導演並在兩者之間建立關係。

所以起初我有電影插入。我可以在哪裏插入標題,說明和年份。

然後我有導演插入。我可以在哪裏插入導演的名字和他/她的生日。而且我應該有一個現有電影的下拉菜單。所以我可以爲導演選擇一部電影。

如何創建這兩者之間的關係?我已經有了這個東西,現在我有插入單獨,我也有現有的電影標題下拉。我不知道的是如何連接這兩個,所以如果我想顯示電影,我也可以顯示正確的導演。當我需要爲電影添加多個導演時,同樣的事情也會發生,那麼它也會顯示那部電影的那兩個導演。

好的,我希望你能理解我的意思。 謝謝。

+0

在你的表格 –

+0

之間創建導演 - >電影之間的「一對多」映射,更好地顯示db結構和解釋關係,幫助人們更好地理解你的問題。 – Naincy

回答

1

您需要創建第三個表格,其中包含電影和導演的ID。

[Movie] ---< [Director_Movie ] >--- [Director] 

因此,可以說你有下列董事

ID Name 
01 Bob 
02 Alice 

和下面的電影

ID Name 
01 Movie 1 
02 Movie 2 
03 Movie 3 

因此,可以說電影1和電影2被Bob和電影3愛麗絲製成,存儲在Director_Movie中的數據應該是這樣的。

ID_Director ID_Movie 
01   01 
01   02 
02   03 

所以,如果你想知道哪些電影是由Bob製作的,你的SQL應該看起來像這樣。

Select * 
From Movie 
where Movie.id = Director_Movie.id_movie and 
     Director.id = Director_Movie.id_director and 
     Director.id = 01; 

既然你已經創建了一種在電影和數據表主任存儲與PHP,創建一個新的數據保存在Director_Movie沒有不同。

首先想到的是創建另一種形式來選擇電影和導演,並將這兩個ID存儲在新表格中。

你只需要記住,在新表Director_Movie中,Movie_ID和Director_ID同時是主鍵和外鍵,我想你已經知道主鍵是什麼了,但是如果你不知道什麼是外鍵鍵可以check this

+0

感謝您的支持。它給了我一些現在的感覺。 – anthony

0

如果不知道表結構就很難回答,但如果要與表格關聯,則需要添加1個字段,該字段將告訴程序該電影的哪個導演。 這樣電影必須有一個名爲director_id的字段,那麼你將需要添加該電影的導演。或者如果您想先創建電影,則需要更新director_id字段

相關問題