我有一個數據庫,我正在創建,並與Mysql中的另一個表進行了1對1連接,下面是一個屏幕截圖。我的問題是,我可以刪除創建連接時創建的額外列(assembly factory_id)嗎?我只想要單一的(factory_id)這會搞砸我建立的連接嗎?我應該放下(factory_id)並讓連接繼續嗎? 我是小白,謝謝!可以刪除它嗎?
Q
可以刪除它嗎?
0
A
回答
1
我假設您的評論「但我應該刪除表嗎?」真的意味着說「但我應該放棄專欄?」。
簡短的回答:如果安全,您應該刪除該列 - 沒有理由讓它混亂數據庫和未來開發人員的頭腦。如果1)factory_id中的值IS和ALWAYS將與組件factory_id相同,例如它們是彼此的重複值,並且2)沒有其他表或程序是其它的表或程序代碼引用程序集factory_id,則可以安全地刪除程序集factory_id。
但是,如果有任何機會,他們意味着不同的事情(不只是20行左右的樣本),你不能刪除它。請參閱小提琴:http://sqlfiddle.com/#!9/0bf17/1
如果它們總是相同,但數據庫或代碼的某些部分引用程序集factory_id,那麼可以重構那些數據庫或代碼部分來引用factory_id,然後刪除程序集factory_id。
在做這樣的事情時,應該進行測試以驗證更改後的查詢和程序狀態與更改前的狀態相同。
1
您可以使用ALTER語句刪除多餘的列。
ALTER TABLE table_name DROP COLUMN factory_id;
您也可以參考http://docs.oracle.com/cd/E18283_01/server.112/e17118/statements_3001.htm#i2103683 (下降特定列條款)
編輯: 至於連接方面,ALTER語句轉儲到一個臨時表,然後在不丟失任何重建連接。請參閱存儲,性能和併發注意事項在此document
相關問題
- 1. 我可以刪除xxxxxxxAreaRegistration.cs嗎?
- 2. 我可以刪除flashlogs.txt嗎?
- 3. Ansible安裝了Git嗎?我可以安全地刪除它嗎?
- 4. 我可以重寫composer.json依賴項來刪除它嗎?
- 5. 這是什麼/build/config.gypi文件,我可以刪除它嗎?
- 6. 我有一堆cvs。〜文件。我可以刪除它們嗎?
- 7. 觸發「而不是刪除」,它可以工作嗎?
- 8. 顯示wordpress目錄的URL - 我可以刪除它嗎?
- 9. C++ const使用。我可以刪除它嗎?
- 10. 什麼是'.save_docker /'文件夾?我可以刪除它嗎?
- 11. 什麼是VSSVER.SCC文件,我可以刪除它們嗎?
- 12. 用戶看到它後可以刪除/取消通知嗎?
- 13. Library/android-sdk-mac_86 - 我可以刪除它嗎?
- 14. 什麼是npm tmp目錄?我可以刪除它嗎?
- 15. Atom.io搜索和刪除,可以嗎?
- 16. 我可以刪除父分支嗎?
- 17. 可以通過API刪除授權嗎?
- 18. 可以刪除sql統計信息嗎?
- 19. 可以刪除繼承的樣式嗎?
- 20. gitolite可以防止分支刪除嗎?
- 21. 我可以讓readProcess刪除引號嗎?
- 22. 可以刪除RabbitMQ的`/`VHost嗎?
- 23. 我們可以刪除ES6課程嗎?
- 24. 我可以刪除遷移文件嗎?
- 25. jQuery可以刪除這段文字嗎?
- 26. 我可以刪除這些跨度嗎?
- 27. 我們可以刪除dom表嗎?
- 28. 你可以用節點刪除system32嗎?
- 29. 我可以刪除遷移文件嗎?
- 30. MKS中可以刪除成員嗎?
非常感謝!那是我需要的答案!是的,我的意思是專欄,而不是表:) – beau8008 2015-04-01 20:10:10