我有以下3個相關的表SQL:重複行以及所有相關的行
Schools Departments Classes
--------------- ------------------ -----------------
ID ID ID
School_Name ID_Schools ID_Departments
Department_Name Class_Name
以及他們包含內容的小樣本(我就畫我最大的努力)
---- Schools ---
ID School_Name
----------------
1 School_1 <----------------------\
2 School_2 |
n ........ |
|
---- Departments ---------------- |
ID ID_Schools Department_Name |
--------------------------------- |
1 1 Dept_1 <-----------/ -->--\
2 1 Dept_2 <-----------/ -->--|------\
3 2 Dept_1 | |
n .. ...... | |
| |
---- Classes ------------------- | |
ID ID_Departments Class_Name | |
-------------------------------- | |
1 1 Class_1 <-------------/ |
2 1 Class_2 <-------------/ |
3 1 Class_3 <-------------/ |
4 2 Class_1 <--------------------/
n .. .......
所有ID都是自動遞增的
我正在尋找一種方法來複制'School_1'層次結構。問題是我如何維持新行之間的關係?
例如要複製'School_1'層次結構,我會在Schools表中插入一個新的原始數據,最終會生成一個新的ID(例如5)。
部門的Dept_1'和 'Dept_2' 屬於 'School_1' 將獲得新的ID
---- Departments ----------------
ID ID_Schools Department_Name
---------------------------------
16 5 Dept_1
17 5 Dept_2
和類也將獲得新的ID
---- Classes -------------------
ID ID_Departments Class_Name
--------------------------------
56 16 Class_1
57 16 Class_2
58 16 Class_3
59 17 Class_1
我如何能實現這是一種簡單而智能的方式?
目前無法回答此問題,但投票質疑其完美形式。我希望所有的SO問題都像這一個一樣清晰易懂! –