SQL 的新手,如何导入多个 .CSV 文件?
New to SQL, how can I import multiple .CSV files?
我是 SQL 的新手,具有 OOL 类型编程的背景。
我创建了以下查询,它成功地将 .CSV 文件导入 SQL Management Studio 上的 table。我将如何导入多个文件?使用 OOL 语言这将非常简单,尽管我听说您必须使用 cmd 读取目录?
工作代码如下:
--Cihans Import for Holdings--
INSERT INTO Holdings1
SELECT * FROM OPENROWSET
('MSDASQL', 'Driver={Microsoft Access Text Driver (*.txt, *.csv)}
;DBQ=C:\Share\DataUploads\FundHoldings;','SELECT * FROM holdings.csv')
我将如何处理 looping/reading 目录中的所有文件并导入数据?每个月给我们 120 多张,我想用上面的导入。或者是否有人可以推荐替代方案?
您可以访问 SSIS 吗? (SQL 服务器集成服务)?
如果是这样,您可以使用它设置一个 ETL 任务,以使用 FOREACH LOOP CONTAINER
包含您的数据流任务和文件系统任务的文件夹导入所有文件?
编辑 - 对评论的回应 - 此线程中的解决方案应该使您能够仅使用 T-SQL 来完成您需要的操作:loop through files in folder
基本上 - 将所有文件加载到一个 temptable 中,创建一个 while 循环,每次执行时从文件夹中传入一个新文件名,然后执行数据操作,然后传入下一个文件名,直到全部完成。
我是 SQL 的新手,具有 OOL 类型编程的背景。
我创建了以下查询,它成功地将 .CSV 文件导入 SQL Management Studio 上的 table。我将如何导入多个文件?使用 OOL 语言这将非常简单,尽管我听说您必须使用 cmd 读取目录?
工作代码如下:
--Cihans Import for Holdings--
INSERT INTO Holdings1
SELECT * FROM OPENROWSET
('MSDASQL', 'Driver={Microsoft Access Text Driver (*.txt, *.csv)}
;DBQ=C:\Share\DataUploads\FundHoldings;','SELECT * FROM holdings.csv')
我将如何处理 looping/reading 目录中的所有文件并导入数据?每个月给我们 120 多张,我想用上面的导入。或者是否有人可以推荐替代方案?
您可以访问 SSIS 吗? (SQL 服务器集成服务)?
如果是这样,您可以使用它设置一个 ETL 任务,以使用 FOREACH LOOP CONTAINER
包含您的数据流任务和文件系统任务的文件夹导入所有文件?
编辑 - 对评论的回应 - 此线程中的解决方案应该使您能够仅使用 T-SQL 来完成您需要的操作:loop through files in folder
基本上 - 将所有文件加载到一个 temptable 中,创建一个 while 循环,每次执行时从文件夹中传入一个新文件名,然后执行数据操作,然后传入下一个文件名,直到全部完成。