2017-02-25 118 views
0

我有一個MySQL數據庫。我必須在其中插入兩組數據。將多個值插入到mysql列中

  1. 程序
  2. 課程

每個程序包括一個以上的課程。一門課程可以包含多個課程。如果我創建了兩個表格 - 程序和課程,是否可以將多個值插入到Program表格中名爲課程的列中?如果是的話如何?如果不是,哪種方法可以在mysql數據庫中表示這些數據?

我有一個想法
創建一個名爲Programmes_and_Courses的第三個表,其中包含兩列 - 指向程序表和courseid指向課程表的程序ID。要插入由兩個課程c1和c2組成的程序p1,請按以下方式在表Programmes_and_Courses中插入兩行: Table
這是個好主意嗎?如果是的話,你能否爲第三張桌子建議一個更好的名字?
謝謝。

+1

這就是所謂的「多對多」關係,並且是執行此操作的標準方法。表名約定通常是'courses_programmes',每個表名都有'_',表格之間按字母順序排列。 – apokryfos

+0

感謝您的信息。 :-) –

回答

2

創建第三個表格絕對是一種方法。這種表格有時被稱爲聯結表。以下好處:

  • 它可以讓你獨立插入記錄ProgramsCourses表。
  • 它將保持程序和課程相互分離,並保持您的架構在第三範式。

至於名稱方面,你可以去用program_courseprogram_idcourse_id爲列。

+0

快速回復。謝謝。 –