我有一个CSV文件,该文件需要在数据库中BULK INSERT
存储。
实际方案是:
BULK INSERT
将 C:\ Data \ file01.csv 插入最终表Windows共享文件夹有点漏洞和不稳定,所以我想让它有所不同:
VARBINARY(MAX)
列中插入 file01.csv VARBINARY
的 CSV ,并将其BULK INSERT
放入最终表中我发现进行第二种选择的唯一方法是:
VARBINARY
数据生成 temp.csv BULK INSERT
将 temp.csv 放入决赛桌是否可以使用VARBINARY
变量代替BULK INSERT
中的文件?
或者如果不可能的话,还有更好的方法吗?
(在Google中搜索了答案,仅找到了如何从CSV文件中读取VARBINARY
值,因此我的问题可能是重复的)
答案 0 :(得分:0)
您可以执行描述的一种方法是使用脚本任务创建SSIS包(或与此相关的控制台应用程序),该脚本任务将Varbinary列读取到单列DataTable中,并解析为“最终表格式”数据表,然后进行批量插入。整个过程将在内存中进行。
答案 1 :(得分:0)
您可以将varbinary(max)数据插入FileTable中。 SQL Server实际上会将数据写入本地文件,然后可以使用BULK INSERT处理。