DB2如何修改用於添加多列的表語句?如果在添加列時遇到問題,是否按順序添加列並刪除已添加的列?列的順序是否保留?多次調用alter table語句會更好嗎,對於每個列而言,性能是否明智?DB2如何更改用於添加多列的表語句?
1
A
回答
1
您可以一次添加欄多是這樣的:
alter table jgrun.tmp
add column col1 varchar(15)
add column col2 int default 0
add column col3 varchar(10)
您可以刪除多列這樣的:
alter table jgrun.tmp
drop column col1
drop column col2
如果您必須添加/刪除多個列,你應該用這種方法(更好的一個接一個)
1
隨着Db2,DDL(包括alter table)在事務控制下,所以如果你想做多個改變(創建,下拉,更改等),您可以在一個單一的工作單元內完成工作,但需要具備可用的事務日誌記錄功能。因此,多個DDL語句可以是單個原子操作,這意味着如果其中一個失敗,整個事務將回滾。根據宿主Db2(Z/OS,i-series,Unix/windows)和Db2版本的平臺,對於在Db2需要重組之前可能發生的表的單獨更改的數量有限制。這會影響您使用的ALTER語句的數量(例如,在單個語句中添加多個列)。
性能可能並不是決定如何對變更進行分組的因素。可恢復性,空間考慮,對象依賴性,退出,HA/DR考慮,變更窗口時間,可用性問題,調度,代碼依賴性可以確定您使用的序列。一種尺寸不適合所有。
相關問題
- 1. IBM DB2多次修改表的語句
- 2. 如何更新一個SQL語句的多個表在DB2
- 3. 問:Python3 - 如果用於更改列表長度的語句
- 4. 的Xquery REPLACE語句用於在DB2表中的多個節點
- 5. 如何更新DB2中單個更新語句中的多個列
- 6. 在不使用更改語句的情況下添加新列
- 7. 如何更改表添加列如果列不存在於cassadra?
- 8. 如何編寫SQL語句(用於DB2)以使用這些條件更新表?
- 9. 用於添加多列的mysql語句是否存在
- 10. 查詢不適用於在多列上添加case語句後的where子句
- 11. 基於php添加/更改文本if語句
- 12. 如何在SQL select語句內附加2列或更多列
- 13. 如何更改mysql語句取決於多少變量與PHP
- 14. 更改多個if語句
- 15. DB2 Update語句
- 16. 如何更改少編譯,以便它不添加@import語句?
- 17. 如何更改!isset語句
- 18. 如何在此jQuery語句中添加更多內容
- 19. 如何添加if語句
- 20. 如何添加基於現有列更改的新列
- 21. 用於更新列的SQL語句
- 22. db2最近的sql更新語句
- 23. 如何從沒有foreach語句的列表中添加或更新?
- 24. 改進我使用PDO和添加更新語句的SELECT
- 25. 添加語句不適用於sqlite
- 26. 如何添加表列標題SQL SELECT語句
- 27. 如何在數組列表中循環添加語句
- 28. 使用Case語句更改PIVOT列
- 29. 如何在確定的列中添加值並使用語句?
- 30. DB2更新語句中丟失