我的一个表里数据大概有几十G,建表时没设置主键,只要一查询时内存爆满,现在想设置主键,手动设置时一保存数据库就死了,有没有什么好的办法啊,多谢各位了
------解决思路----------------------
设一个吧
alter table 表名 add constraint 主键约束名 primary key (列名)
------解决思路----------------------
1.用SELECT * INTO NEW_TABLE FROM OLD_TABLE WHERE 1=2 方法新建一个NEW_TABLE,
2.在新表上建立主键,索引,
3.然后通过SSIS等EXP/IMP工具,将 WHERE DATE 小于某个日期之前的数据全部导入,
4.最后在系统停机维护的时候,将数据在大于DATE的所有记录插入NEW_TABLE.
5.将OLD_TABLE重命名,
6.将NEW_TABLE重命名为OLD_TABLE.完成功能。
7.测试应用是否可用。