我們試圖將兩個不同的數據庫放在一起,但兩個數據庫都使用相同的ID。不同的信息,但我們會有兩個具有相同ID的用戶。有沒有一種方法可以在一個數據庫中更改ID,然後使用該ID更新每個表?更改ID和更新表
Q
更改ID和更新表
2
A
回答
2
如果你有沒有依賴性照顧,真是太簡單的解決方案浮現在腦海:
僞代碼:
SELECT max(id) FROM database1.tablename
// Returns 10389
UPDATE database2.tablename SET id = (id + 10389)
// Sets 1st record to 10390
// 2nd record to 10391
// 3rd record to 10392
......
0
如果它的自動增量ID列,你可以這樣做:
SELECT //(columns except id)
INTO new_table_name [IN otherdatabase]
FROM old_tablename
和tadaa!
0
我們正在研究這樣一個項目,答案是登臺表。對將要插入的數據進行分級併爲新ID添加一列。插入父記錄並更新臨時表中的新ID(SQL服務器對輸出子句有幫助,我不知道其他dbs)。現在當你插入子記錄時,你使用新的ID而不是舊的ID。另一種方法是將舊ID添加到父表中。插入到子表時,使用它來加入以獲取新ID。當所有數據遷移時,請刪除該列。
0
假定沒有其他處理的數據庫1和數據庫2是怎麼回事,試試這個:
1)在數據庫中1得到數據庫最多2個ID
2),刪除所有外鍵關聯3)在數據庫2中,在ID爲自動增量/標識的表上,您將不得不添加新的列ID2並使用UPDATE YourTable SET ID2=ID+{max ID from database 1}
填充它,然後刪除原始ID列,然後重命名ID2以ID
4)在databa SE 2,對於使用此ID作爲FK所有其它表,在數據庫2中使用UPDATE OtherTable SET ID=ID+{max ID from database 1}
5)改變的ID,還原外鍵,以驗證在數據庫2中的數據
6),數據導出到文件
7)在數據庫1中,從數據庫2導入文件
相關問題
- 1. 更新/更改所有ID在PhpMyAdmin(MySQL)
- 2. TinyMCE和textarea id更改
- 3. jQuery行更改和ID
- 4. CodeIgniter - 哪部分代碼正在更改和更新會話ID?
- 5. Java:更新MySQL表的ID
- 6. 如何更新表列ID?
- 7. 只更新表格ID
- 8. Excel函數根據舊/新ID的列表更改ID號
- 9. ID不更改
- 10. Facebook ID更改
- 11. 更改ID
- 12. jQuery更改ID!
- 13. ID更新Cassandra
- 14. find_or_create_by更新ID
- 15. MySQL和改變(更新)的所有表
- 16. 更改.toggleClass()更改後的類ID
- 17. jQuery更改表單ID並提交「新」表格
- 18. 在Rails中更改新對象的ID
- 19. 刷新頁面並更改URL的ID
- 20. 更新SQL表來更改時間戳
- 21. 更新列表 - 查看模型更改
- 22. 如果表內容更改,更新RowSet?
- 23. C#列表框更新項目更改
- 24. gridview沒有更新後表更改
- 25. 基於BlockingCollection更改的更新表
- 26. Informix更改/更新表信息
- 27. 只更改字段的更新表
- 28. 如何使用更改值更新表
- 29. 關於table1更改的更新表2
- 30. 更新更改行