C#关于操作Excel数据汇入数据库问题和数据库连接问题

我现在有这样一个功能,我准备使用NPOI读取Excel数据,把每一行读取的数据作为查询条件去查询数据库,如果数据库中存在这一行数据,就把这一行数据中《数量》列的值更新up... 我现在有这样一个功能,我准备使用NPOI读取Excel数据,把每一行读取的数据作为查询条件去查询数据库,如果数据库中存在这一行数据,就把这一行数据中《数量》列的值更新updata到数据库中,如果数据库不存在就插入一条insert到数据库中。
我个人想到的方法就是很正常的去编写:读取数据Excel循环第一行,生成SQL查询数据库,用if判断返回值,如果返回值不为空就调用updata方法,如果为空就调用insert方法,每次执行的时候都会打开数据库连接,关闭数据库连接!然后继续第二行。这样我虽然去没具体试过,但是我知道肯定效能非常差,因为我的Excel有几千行数据,所以求高手指点一下,提供点思路,怎样更合理。
展开
 我来答
百度网友5165b85
2014-08-19 · TA获得超过858个赞
知道小有建树答主
回答量:210
采纳率:0%
帮助的人:238万
展开全部
我不是高手,随便说说,希望对你有帮助:
1、如果数据几千行,但估计更新行却不多的情况下,可以在EXCEL行中设置一个列标识是否被更改,这样就只更新或添加发生更改的行了,可大大减少操作数据量。
2、可以使用dataset,不用每次打开关闭数据库的, 总共打开关闭一次就行。
3、也可以将EXCEL表一次性直接插入数据库, 然后再处理重复的行。 这样先只操作EXCEL,后只操作数据库性能应该快些吧。(重复行可以用时间列判断那个是新数据)
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式