gpt4 book ai didi

c# - 对于每个位数组并将位数字插入数据库的更快方法

转载 作者:太空宇宙 更新时间:2023-11-03 21:35:01 59 4
gpt4 key购买 nike

.dat 文件包含文件大小为 245kb 的二进制数据。所以二进制数的总数是200万。

我需要以二进制形式读取,并将二进制数字存储到数据库中。这是我所做的:

  byte[] data = File.ReadAllBytes(dat_file);

BitArray bits = new BitArray(data);

int id_card = 1;

for (int i = 0; i < bits.Length; i++)
{
if (stop)
{
break;
}
//Insert to database
save_to_database(Convert.ToInt16(bits[i]),id_card);

id_card++;

double perc = (double)i/ (double)bits.Length;

this.btnSubmit.Invoke(new MethodInvoker(delegate { btnSubmit.Text = perc.ToString("P"); }));


}

但问题是foreach bit array 并保存到数据库需要很长时间。如果我没记错的话,达到 600k 大约需要 1 小时。

有什么办法可以解决这些问题吗?我有超过 5 个文件需要读取为二进制文件并将其保存到数据库。

最佳答案

您在每次迭代中都执行数据库插入操作。

我会将插入操作放在循环之外并将结果存储到列表中,然后对数据库进行批量插入。

关于c# - 对于每个位数组并将位数字插入数据库的更快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22241485/

59 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com