万条数据修复处理技能包

38 阅读1分钟

技能1

**根据excel生成sql

F2列计算公式 =C2/30 * DAYS(E2,D2) G列计算公式 =" update order_general_lease set pay_fee ="&ROUND(F2,2)&" where order_code ='"&A2&"'"

技能2

navicat导入excel数据到数据库表financial_order_table 新建表

CREATE TABLE `financial_order_table` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `finanical_car_order_code` varchar(255) DEFAULT NULL COMMENT '财务车辆订单编码',
  `order_center_order_code` varchar(255) DEFAULT NULL COMMENT '订单中心订单编码',
  `order_status` varchar(255) DEFAULT NULL COMMENT '订单状态',
  `car_no` varchar(255) DEFAULT NULL COMMENT '交付车辆',
  `car_use` varchar(255) DEFAULT NULL COMMENT '车辆用途',
  `lease_amount` decimal(24,6) DEFAULT NULL COMMENT '计算租金(含税)',
  `service_amount` decimal(24,6) DEFAULT NULL COMMENT '计算服务费(含税)',
  `car_customer_name` varchar(255) DEFAULT NULL COMMENT '提车客户名称',
  `contract_party` varchar(255) DEFAULT NULL COMMENT '合同乙方',
  `rent_day` varchar(255) DEFAULT NULL COMMENT '租期天数',
  PRIMARY KEY (`id`),
  KEY `idx_order_center_order_code` (`order_center_order_code`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1048576 DEFAULT CHARSET=utf8mb4 COMMENT='financial_order_table';

对excel表头进行命名,表头名称等于数据库表字段名

image.png

image.png

image.png

image.png

image.png

这时候点击下一步,excel中的数据就会导入到数据库中了。

技能3

备份表数据,还原表数据

  1. 首先创建一个备份表,备份表的表结构和新表相同
create table dst_db_order.dst_db_order.order_general_lease_bak like dst_db_order.order_general_lease; 
  1. 向备份表中添加要备份的数据
 insert into dst_db_order.dst_db_order.order_general_lease_bak
 select * from dst_db_order.order_general_lease;
  1. 还原数据 首先删除原表数据
truncate table dst_db_order.order_general_lease

然后将备份表数据插入原表

   insert into dst_db_order.order_general_lease select * from dst_db_order.order_general_lease_bak