将csv文件上传到MS SQL表的最佳方法是什么?

时间:2011-09-27 16:07:23

标签: asp.net sql

几种方法:

  1. 使用SQL批量导入存储过程并使用文件路径
  2. 调用存储过程
  3. 在System.Data.SqlClient dll中使用SqlBulkCopy
  4. 逐行读取文件,然后逐行插入表格
  5. 还有其他方法吗?
  6. 哪一个最好?我只想让用户从asp.net网页中选择一个文件。然后单击“上载”按钮将文件存储在DB中。

    其次,在将文件复制到db表之前,是否需要将文件移动到服务器的内存中?

1 个答案:

答案 0 :(得分:0)

  1. 数据库不会知道该文件,因为所有内容都应该解耦并分层。将文件保存到某个共享位置会增加开销和整理等等

  2. 当然你希望这是一个原子操作。 10k行将是10次往返,客户端事务正在运行。如果不是原子的,那么你需要升级表并整理

  3. 在c#中解析,使用table valued parameter发送到数据库。否则,可能没什么相同和/或现实......