惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
C
CERT Recently Published Vulnerability Notes
P
Proofpoint News Feed
Y
Y Combinator Blog
T
The Blog of Author Tim Ferriss
云风的 BLOG
云风的 BLOG
H
Help Net Security
Recorded Future
Recorded Future
The Register - Security
The Register - Security
F
Full Disclosure
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hackread – Cybersecurity News, Data Breaches, AI and More
爱范儿
爱范儿
Security Archives - TechRepublic
Security Archives - TechRepublic
Simon Willison's Weblog
Simon Willison's Weblog
Cisco Talos Blog
Cisco Talos Blog
I
InfoQ
T
Tenable Blog
T
Tor Project blog
人人都是产品经理
人人都是产品经理
D
DataBreaches.Net
NISL@THU
NISL@THU
Google DeepMind News
Google DeepMind News
博客园 - 叶小钗
B
Blog
V
V2EX
Jina AI
Jina AI
L
LangChain Blog
月光博客
月光博客
W
WeLiveSecurity
U
Unit 42
AWS News Blog
AWS News Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
博客园 - 聂微东
V
Visual Studio Blog
A
Arctic Wolf
T
Tailwind CSS Blog
The Cloudflare Blog
SecWiki News
SecWiki News
S
SegmentFault 最新的问题
Hacker News - Newest:
Hacker News - Newest: "LLM"
宝玉的分享
宝玉的分享
MyScale Blog
MyScale Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
S
Securelist
www.infosecurity-magazine.com
www.infosecurity-magazine.com
腾讯CDC
雷峰网
雷峰网

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理, 企事业单位数字化的业务供需本质 – 人人都是产品经理, 医疗智能体·第1讲——医疗信息化重构:从“辅助软件”到“自主智能体”的范式转移 – 人人都是产品经理, 粉丝量就是空气!!! – 人人都是产品经理, 用户说“薯片碎了”,机器回“要买吗?”:意图识别的翻车与破局 – 人人都是产品经理, RAG召回准确率从75到90 我做对了这三件事 – 人人都是产品经理, AI大事件:Anthropic改收费、OpenAI发安全版、手术机器人纳入医保、阿里发布”秒悟” – 人人都是产品经理, Chrome 推出 Skills 新功能,Agent 重塑上网方式 – 人人都是产品经理, GitHub前创始人拿了a16z的1700万美元,做Agent时代的Git – 人人都是产品经理 拷贝或克隆其他 Flutter OH 项目到本地后无法运行 – 人人都是产品经理, 优惠券设计:优惠券创建 – 人人都是产品经理, 不用死磕文档!AI 助手 1 小时搞定飞书 CLI 安装 + 配置 + 知识库 – 人人都是产品经理, 用小龙虾做竞品分析报告:从2天到20分钟,我是怎么做到的 – 人人都是产品经理 用小龙虾做市场分析报告:搞懂这3个公式,市场规模不再靠猜 – 人人都是产品经理, 你早就在做 Harness 工程,只是不知道它叫这个名字 – 人人都是产品经理, Think Long就够?你可能想多了! – 人人都是产品经理, 货代SRM实战:供应商准入怎么做,才能让资源池不是通讯录而是可交付网络? – 人人都是产品经理, 如何做好用户调研?详解基本技巧 – 人人都是产品经理, 木鸟、途家、美团对打,平台春天行动开“卷” – 人人都是产品经理, 入职才发现公司不靠谱?小红书从业者求职避坑指南 – 人人都是产品经理, 美国 AI 三巨头联手封堵,中国 AI 突围之路在何方 – 人人都是产品经理, 小红书,放在需求对面的镜子 – 人人都是产品经理, AI 会带来大规模失业吗? – 人人都是产品经理, 从出单到补货前,我第一次犹豫:该不该放大? – 人人都是产品经理, Flutter 三方库鸿蒙化适配:5 种高效检查方式,快速判断是否需要适配 – 人人都是产品经理, 从做产品进阶拿结果:医美机构产品经理转岗科室运营经理 – 人人都是产品经理, 阿里HappyHorse,一场关于“Token经济”的阳谋 – 人人都是产品经理, To B AI:客户留存落地的观察与思考 – 人人都是产品经理, AI产品的“生命线”——数据采集、标注、清洗的产品化设计 – 人人都是产品经理, 谈谈AI Agent(二):当“孩子”能自己“体验世界”时,你该学什么? – 人人都是产品经理, UI/UX设计师的3层能力进阶,前两层让你活下来,第三层…才是真正的分水岭 – 人人都是产品经理, 2分钟 → 30秒,效率提升75%:B端产品经理如何用「规则枷锁」驯服AI幻觉? – 人人都是产品经理, 还没来得及学OpenClaw,来了个更猛的:Hermes Agent – 人人都是产品经理, AI日报:宇树机器人跑出10m/s刷新世界纪录 – 人人都是产品经理, 一文说透基金互金如何用情绪价值引导用户决策做转化 – 人人都是产品经理, 当浏览器开始替你”看”网页:AI 浏览器正在亲手拆掉它脚下的那张网 – 人人都是产品经理, 0代码,一天时间我Vibe Coding了个网站 – 人人都是产品经理, Hermes 和 OpenClaw 之争,Agent 的能力应该“装上去”还是“长出来”? – 人人都是产品经理 视频生成的“桌子”,字节Seedance 2掀完,阿里快乐马掀 – 人人都是产品经理, 从听不懂到完全信任:我的 Codex 深度产品体验 – 人人都是产品经理, 当虚拟偶像有了北京户口,与真人偶像还有什么区别? – 人人都是产品经理, 会说,远远比会做更重要 —— 对 SBTI 爆火现象的五层观察 – 人人都是产品经理, AI产品经理必看:当“搭环境”比“选模型”更重要,你的认知还在2024年吗? – 人人都是产品经理, 2026年AI产品商业化核心逻辑:从功能demo到规模化营收的3个必破卡点 – 人人都是产品经理, 京东围绕供应链,卷起裤腿下场的那些事儿 – 人人都是产品经理, SBTI一夜刷屏:它赢在了“太会说人话” – 人人都是产品经理, 折扣零售的真相:不是便宜,而是价值感! – 人人都是产品经理, 和甲方吵了一架,最后加钱做了——我学到的ToB产品经理生存法则 – 人人都是产品经理, 和几位小红书操盘手聊了8小时,干货全在这 – 人人都是产品经理, 智谱GLM-5.1登场,开源模型首超Opus4.6!!! – 人人都是产品经理 Anthropic收入凭什么反超OpenAI,终于有人把这事说清楚了 – 人人都是产品经理, 史上最有故事感的技术报告——Claude最强模型Mythos 7个极其精彩的细节 – 人人都是产品经理, 模型不是壁垒,Harness 也不是 – 人人都是产品经理, 抖音本地生活业务思考21 – 人人都是产品经理, Superpowers:145k Star的AI编码框架,到底是什么来头? Superpowers:145k Star的AI编码框架,到底是什么来头? – 人人都是产品经理, OpenAI 的路走错了,Anthropic Harness 解法启示:模型需要实践专科生 – 人人都是产品经理, 画原型图的前一步:设计站点地图 – 人人都是产品经理, 给 DeepSeek 的最后一封催更信 – 人人都是产品经理, 手把手教你用 Claude Code 搭建 AI 营销团队:5 个 Agent、12 项技能,独立完成研究、写作、设计全流程 – 人人都是产品经理, 你以为大模型在学语言?不,它在重新发明语言学 – 人人都是产品经理 所谓Skill,不过是AI时代的工业垃圾 – 人人都是产品经理, 聊一聊内容传播的几个方法 – 人人都是产品经理, 当平台开始吃掉生态:从 OpenClaw 被封杀,读懂 Anthropic 的这盘棋 – 人人都是产品经理, 你装了 10 个 AI 插件,Obsidian 还是一个文件夹 – 人人都是产品经理 关于AI智能体架构演进的系统性思考:从单体试水到多体协同的重构 – 人人都是产品经理, 当“人”变成Skill,我们又该何去何从? – 人人都是产品经理 Mythos 事件:前沿 AI 治理的意外实验 – 人人都是产品经理, 货代CRM:信用与风险管理怎么做,才能把坏账风险拦在放货之前? – 人人都是产品经理, 从HR收集自拍照到员工自助录入——我见证了园区人脸识别从”不可用”到”真好用”的全过程 – 人人都是产品经理 千问闯关AI混沌期:阿里画靶,吴嘉张弓,马云射箭? – 人人都是产品经理,
只有小功能没有小需求,6000字详解导入Excel
王大鹿 · 2023-07-27 · via 人人都是产品经理

在B端产品中,导入是最常见的功能之一。当我们做项目时,需要涉及到大量的数据,应该如何处理数据?本文介绍了将Excel数据导入到数据库中需要注意的点和方法,希望对你有所帮助。

最近在从0到1做一个新的项目,涉及到大量数据的维护,有简单的基础字典数据的维护,也涉及到“严肃数据”的维护,这些数据有个要求:一个都不能错。

我们是第一期版本,本来想直接写SQL更新,但是运维不让搞,也没有足够的时间去开发页面功能,为了快速生产数据,这个时候最好的方式就是“批量导入excel”。把导入的功能搞上线后,坑我踩了不少,同时导入功能也是B端产品中最常见的功能。

咱们今天就说说导入excel~接下来我先不按照导入的流程说,因为导入整体的流程比较简单。大流程就是将Excel数据导入到数据库中。

在细化一点,就是模板制作,用户下载模板,填写完数据后再上传文件。程序开始数据校验,有错误数据用户再修改,直到导入成功进入到数据库。

我就不按照导入的流程说了,直接说我个人感觉比较重要的地方,这些弄清楚那导入就没问题了。

我整理了以下4点,咱们一个个说。

一、导入校验

导入时为了保证数据的准确性,最重要的就是“校验”了。

因为是导入的数据最终是到数据库,如果你对数据库有了解,校验逻辑你肯定会清楚很多。

不懂也没事,咱们先说校验。

校验一般分为以下内容:

我们一个一个的说下:

1、文件校验

(1)导入文件格式

对于excel,常见的格式有xlsx、xls、csv;

推荐xlsx格式,它不仅是目前主流的excel格式,而且相同行+列数据时,xlsx格式文件体积较小。

(2)导入文件大小

对于导入文件体积大小的限制,对文件大小添加限制的主要原因是文件过大时,程序处理起来会很费劲,所以可以添加大小限制。

可以根据数据量大小设置,建议最大值在5M。

当然也可以对文件内的“行数”添加限制,比如说每次导入最多2000条等。

目的都是为了加个限制。

(3)导入文件名称

校验上传文件的文件名,当上传与要求的文件名称不一致时则报错。

当文件名称没有特殊作用时,不建议对名称进行校验。

2、模板校验

模板里有表头名称、sheet页名称,用于让程序知道需要更新数据库里的哪个表,哪个字段。

表头名称是指导入模板内的列名,当导入到数据库的时候,程序知道哪个列对应数据库里的表字段,当与导入模板要求不同时则报错。

由于一个excel里可以添加多个sheet页,如果你的模板里涉及到多个sheet页,这个时候就需要对sheet页名称进行校验。

另外还有对表头字段名称顺序的校验,我们可以加上字段顺序的校验,当字段列顺序和模板不一样的时候,则提示模板不对。

当然也可以直接按照字段名称去匹配,不管字段顺序。

当模板校验通过后,在进入到下一步的数据校验。

3、文件内数据校验

当模板校验通过后,然后在对Excel内的数据进行校验,这个时候可以对文件内的必填的单元格数据、不可重复的单元格数据进行校验。

这个时候还是对Excel内的数据进行校验,还没有到数据库。

当然有个极端情况,就是模板内数据为空,只有个表头,这个时候不需要处理,直接提示:文件内数据为空,请补充数据后再上传。

接下来就是对字段进行其他校验,具体的校验咱们在下边一起说。

4、字段校验

(1)字段是否必填

如果字段是必填值,导入的excel里单元格为空,所以数据就是错误的,则需要进行报错提示。

(2)字段是否唯一

对于一些字段,我们要求是唯一的,但是会存在2种情况:

  1. 文件内的数据有重复值
  2. 文件内的数据和数据库里已有的值存在重复

对于这2种情况,都是由于数据有误引起的,我们可以制定规则:按照最新的唯一值进行更新数据,或者是直接提示报错,

下边会细聊。

(3)字段格式

如数字格式、日期格式、时间格式、字符串格式。如果这列字段和数据库表字段的格式对不上,也导不进去。

还有就是数字的大小,比如只能输入个位数,导入时填写了100,则这个数据就有问题,就需要报错。

还有小数点位数、手机号、身份证号、税号等基础格式的校验。

这个校验需要针对每个字段进行校验逻辑说明。

(4)字段长度

比如说最大长度是250个字符,但是excel里的字段长度写了500字符,那就导不进去了,得提示报错了。

(5)固定值校验

如果某个字段需要填写的固定值。

比如说单元格内只能填写是或者否,填写其他内容时,则无法导入数据库。

对于要填写固定值的单元格,我们可以在excel模板里添加下拉框,让用户直接选择,而不用再去输入。

(6)关联校验

关联校验有2种情况:

1、当填写某个字段后,另外一个字段则必须填写。

举个例子:当填写年龄最小值或者最大值时,则必须填写年龄单位;当填写年龄单位时,则必须填写最大值或者最小值。

2、字段跨sheet页校验

对于模板里有多个sheet页时,且sheet页之间存在数据关系时,这个时候需要说清楚sheet页之间的校验。

举个例子:“说明书药品基本信息”中的商品编码与“说明书用法用量”中的“商品编码”需要对应上,当这两个sheet页里的商品编码对不上的时候,就是错误数据,这个时候就要报错。

5、其它校验

整行数据重复校验:如果一行数据相同,我们就可以认为是数据存在重复值,这个时候可以进行报错提示。

多个字段联合重复校验:多个字段合并在一起联合作为唯一值,则存在重复时则可以进行提示。

根据填写的字段做更细的校验:

比如填写是数字,则需要考虑数字的大小,数字的小数点位数。

如果填写的是手机号,则需要考虑手机号格式的校验。

当以上校验通过后,接下来程序就需要将数据导入到数据库了。

我们回顾以上的校验逻辑,可以发现,这些校验和“表单录入”功能需要考虑到的校验基本相似。

二、导入报错提示

在导入时,一定会存在填写内容不对的时候,这个时候就需要进行提示出问题数据了。

首先我们先确定错误提示的时机,就是“什么时候提示”。

一般分为2种:

  1. 发现错误,立即报错
  2. 发现错误,记录错误,最后统一报错

因为报错的时机是跟着校验走的,我们需要根据错误类型进行判断:

1、当对文件校验不通过时,需要立即提示

因为文件校验不通过,压根无法处理数据,这个时候直接报错提示。如文件类型不对、文件大小过大、文件名称不对等等。

对于文件类型的限制,我们可以在选择文件的时候,限制选择的类型,在选择文件的弹窗内,仅展示支持的文件类型,过滤掉其它类型的文件。

对于文件体积大小的校验,可以在选择文件后,由前端进行校验,直接进行提示。

对于文件名称的校验,我建议不校验,如果非要校验,可以在上传后由前端或者后端进行校验,出现错误后直接报错提示。

2、当导入模板不对时,则立即提示

模板不对没有办法进行下一步字段校验,这个时候需要报错。

如果模板错误,我们需要将全部错误的表头一起报错出来,而不是发现一个错误表头后就立刻报错。

报错的方式,可以直接展示出错误的表头名称,并提示出正确的表头名称。

3、字段校验不通过,则统一报错

当导入模板正确,这时系统会对填写的每个字段数据进行校验,这种时候出现的问题,我认为可以在最后进行统一提示。

对于字段校验时的错误数据,有几种方式我们可以参考:

方法1:直接文字提示

说清楚sheet页名称+第几行+第几列+错误信息+正确信息。让用户线下修改,重新导入。

对于错误的信息,需要制定个排序方式,有条理的展示出错误数据,可以按照sheet页顺序+行数顺序+列顺序依次展示。

不过在提醒第几行时,有个小细节,这个第几行要和excel文件内的行数对应,要提醒研发注意。

方法2:导出错误数据

功能上支持导出错误数据,在excel文件内加一列【错误信息】列,展示出每行的问题数据,让用户导出错误数据进行线下修改。

这种比较适合导入字段内容较多,数据量较大的情况。

方法3:在线修改错误数据

展示出报错数据,并提供功能让用户自己在线更改。这种方式比较适合excel内字段内容较少,校验逻辑较少的情况。

三、数据处理

当导入数据后,程序会一边跑数据,一边校验。这个时候还有几个点需要注意。

什么样的数据才能进数据库?

有2种:

  1. 哪条数据校验通过,哪条数据进数据库某条数据通过校验则直接导入进数据库,对于错误的数据,则不进入数据库。
  2. 全部数据校验通过后,全部导入进数据库意思就是excel里的全部数据都通过校验后,将excel内的数据全部导入进数据库;当存在任何一条数据是错误的,则整个excel内的数据都无法导入进数据库。

重复数据的处理方式?

在导入时,当唯一值存在重复时,这个重复有2种情况:一个是在excel文件内有重复,一个是excel文件内唯一值与数据库已有的数据存在重复值。对于重复值有以下处理方式:

  • 报错,把重复值作为错误数据提示报错,让用户线下处理。这种方式比较严谨,我倒是比较推荐这种方式。
  • 更新数据不进行报错,直接按照唯一值更新数据。对于经常进行变更的数据我们可以采用这种方式。
  • 跳过数据,不进行处理当唯一值已存在时,则跳过数据,不更新数据。当已存在的唯一值无法进行更新,或者更新后影响其他数据时,则建议使用这种方式。当然,如果区分不了什么时候更新、什么时候跳过时,可以提供功能让用户选择处理。

过滤不必要的数据:

(1)过滤空格

填写在单元格里的数据当有空格时,如果没有单独要求,则可以让程序过滤掉空格。

如果空格没过滤,导入到数据库后则会形成脏数据。

如果用户填写的数据就有空格时,这个时候可以考虑清空单元格数据内的前后空格。

(2)过滤全行空白数据

当excel中的数据整行数据全部为空时,可以将空白行以及之后的行数据都不做处理。

如果我们在excel里使用了下拉框等方式,虽然没有填写值,但是程序在处理的时候会认为里边有值。

我们可以设置个规则:当一行数据全部为空时,则认为此行以及之后行都无数据。

四、导入模板制作

对于导入模板,我们需要说清楚模板怎么填写,需要把上边提到的字段校验说清楚,同时结合excel的功能制作模板。

1、制定好模板

定义好需要填写字段的表头名称,名称要和功能上的名称一致。

提供下载模板功能,让用户下载模板使用。

对于1对1的关系,这个就很简单,每列对应数据库表中的一个字段,定义好模板中的每个表头列名。

当有1对多的关系时,我们可以设计2种方式。

①一个单元格填写多个值

在单元格内填写多个值,通过一个固定的分隔符号,比如用中文逗号,中文顿号、空格等固定值,让程序知道该怎么分隔。

②分成多行填写

将1对多的关系,按照多行填写。

我们可以根据实际填写的场景设置,把规则说清楚即可。

2、制定好模板字段的填写逻辑

说明每个字段的填写要求,哪些字段是必填、哪些字段不能重复等等,就是要说清楚字段该怎么填才能导进去。

如果字段过多时,可以拉个excel表,单独说明校验逻辑提供给研发。

示例如下:

3、说清楚“如何填写模板”

对于导入模板的填写我们可以使用以下方式:

①新增一个sheet页写模板说明

②在模板前几行填写模板说明

③在单元格添加批注的方式填写说明

④填写示例数据

新增一行示例数据,让用户知道该怎么填写。

以上的方式我们也可以结合在一起,同时提示用户该怎么填。

4、结合excel里的功能设计模板

① 如果填写的数据是固定值,我们可以使用下拉框,直接让用户下拉选择。

如果字典值过多的时候,可以新增一个sheet页,通过设置下拉框取值范围即可。

②在模板内的添加基础校验

使用excel里的“有效性”,添加基础的校验。

五、其它注意点

1、每次导入文件的数量

在开始导入前,首先要看每次支持导入的文件数量。一般每次导入1个文件。当然也能一次导入多个文件,直接每次选择多个文件即可。当同时导入多个文件时,需要注意每个文件直接是否有关系,每个文件的处理是否有处理顺序。

2、同步还是异步处理

同步处理就是导入后,直接处理,页面处于加载状态,后台进行导入处理,此时用户不能进行其它操作,只能当处理完成后,才能进行其他操作。对于数据量较小,处理时间在用户可接受时间内,比如说10秒内,可以采用同步处理的方式。我和研发沟通后,同步处理起来比较方便,我们采用的都是同步处理方式。

异步处理,就是上传文件后,在后台进行处理,用户可以进行其他操作。当后台处理完成后,在提示用户处理结果。对于数据量较大,处理时间较长时,可以采用异步处理的方式。

3、导入文件交互方式的选择

导入文件的交互方式要看采用哪种数据处理方式,才能设计对应的页面交互。

我就不一个个说了,给大家举个例子:

最简单的,每次导入1个文件+出现一个错误数据则无法导入+同步处理。

下载模板:列表里有个下载模板的入口

选择文件:点击导入,直接弹出文件选择框,每次只能选择1个文件,上传文件就开始进行导入。

导入后,程序同步处理,添加个加载状态,当有错误数据时,则报错提示。

导入成功后,加个“导入成功”的提示。

其它的交互方式大家可以搜搜看,有很多。

4、添加日志记录

由于我们对数据要求很严格,所以我们添加了日志记录,用于数据追查。

5、保证功能的连续性

在我们系统中,数据导入后,需要将导入的数据提交给审核人员进行审核,所以我们在导入成功后,添加了“提交审核”的功能,用户可以直接提交数据去审核。

为了保证流程的流畅,我们可以在导入完成后,提供接下来的功能操作入口。

总结

说了很多,导入excel是常见的基础功能,但是涉及到的内容很多,是个细活,从模板制作到校验逻辑,到报错提示,直到数据导入成功。

能把导入excel搞清楚,那我们弄其它数据相关的需求也就so easy 了。

咱们再回头看,导入excel其实就是导入到数据库。

当你对数据库有了解,你就会清晰很多,数据库有字段格式、长度、是否为空,外键等要求,这些不就是excel中的校验。

所以还是推荐大家了解数据库的知识来丰富自己~

专栏作家

王大鹿,公众号:产品大鹿,人人都是产品经理专栏作家。关注医疗领域,擅长原型设计、需求分析和方案设计,分享能落地的工作技能~

本文原创发布于人人都是产品经理,未经许可,禁止转载

题图来自 Unsplash,基于 CC0 协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务