要修改一个表中将近一亿条数据怎么办啊????????????
我这个是oracle数据库,,业务是这样的:把表名,,和要修改的字段名,传入存储过程中,,在存储过程中根据传入的字段名的加工成另一个值,再update给回去,,业务到没什么,就是数据量太大将近一亿条数据
考虑到数据库中的修改,其实是删除+重新插入实现的,所以一次性导出,再复制回去可能更快。具体要看什么数据库引擎。
你这需求。。。用导入导出吧。
是什么数据库,关系型数据库如ORACLE或者DB2可以使用MERGE INTO 做更新修改,这个效率比INSERT高,如果是HADOOP的话通过HIVE的INSERTOVERWRITE做
如果是sqlserver、mysql这种 分批修改 每次修改1000条 然后wait 1毫秒 再1000条这样
既然是上亿条数据的修改,那么不可能是经常性的,很可能是某个地方发生变化,比如公司名称改了之类的,这种情况下因为一年也不一定能遇到一次,因此,你找个休假的晚上不用数据库的时候,直接用SQL语句改就可以了,等周一上班怎么地也改好了
直接导出数据库数据到文件,然后程序修改文件对应的数据,再导入数据库文件。这样比较方便,都可以用程序实现