我想做数据的替换,不知道用什么方法好。

freebird911 2012-11-16 12:00:13
我在做一个execl的导入工作,用户在execl里面输入的是中文名称,我需要将中文替换成系统中对应的类型id,之前是直接查数据库,但是量太大,不想用这种方法!

比如:表格里面类型列中有汽车,飞机,轮船。
数据库中对应的汽车是6,飞机对应的是12,轮船对应的是23.
中文和id没有直接的关系,他需要通过登录帐号来确定关系。也就是说id是完全动态的,不能写死。
不知道大家有什么比较好的办法!
...全文
117 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2012-11-16
  • 打赏
  • 举报
回复
数据库读取外加内存缓存。 在内存中建立一个Dictionary,表示中文和id的对应。首先在这个里面寻找,找不到就去读数据库,然后添加到字典中。如果找到,就直接替换。
kingsunmax 2012-11-16
  • 打赏
  • 举报
回复
刚好做了个类似的工具先看图在讲原理吧

我的是转换方案当然你把他想成导入方案就行了,就是解决你每个用户不同导入用的。
第一列是原始EXCEL列。
第二列是导后面的列
第三列是Python脚本..这个可省了我好多事呵~~鬼知道什么时后要改什么样的需求.
lpingz 2012-11-16
  • 打赏
  • 举报
回复
引用 楼主 freebird911 的回复:
中文和id没有直接的关系,他需要通过登录帐号来确定关系。也就是说id是完全动态的,不能写死。
从楼主的描述看,中文和id是有直接关系的,不过是登录用户+中文确定id。 解决办法就是先将数据库里的username、中文、id读到内存中,直接比对。
心灵彩虹 2012-11-16
  • 打赏
  • 举报
回复
放入datatable,然后把datatable的列名改成中文再倒入excel,然后里面switch case语句做对应
bdmh 2012-11-16
  • 打赏
  • 举报
回复
先将数据读入到内存,字典或hash表都可以,你只需在内存中匹配就行了,不需要每次都去查数据库
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧