我已经开发出一种现在正在生产的软件&由5个客户使用。 我正在使用Derby数据库。
但是,现在,我意识到我应该设计一个包含BigInt
数据类型而不是Integer
类型的表主键列。
那么如果这个表与其他表也通过这个主键列有关系,我怎么能安全地改变表呢?
而且,如果我想将所有表格主键列的类型从Integer
更改为BigInt
,是否会对效果产生任何影响?
答案 0 :(得分:0)
试试这个:
ALTER TABLE MY_TABLE ADD COLUMN NEW_COLUMN BIGINT;
UPDATE MY_TABLE SET NEW_COLUMN=MY_COLUMN;
ALTER TABLE MY_TABLE DROP COLUMN MY_COLUMN;
RENAME COLUMN MY_TABLE.NEW_COLUMN TO MY_COLUMN;
讨论here