如何将 CSV 文件数据导入 SQL Server 2000 表?我需要每天两次将数据从 CSV 文件插入到表中。表有超过 20 个字段,但我只需要将值插入 6 个字段。
问问题
4721 次
5 回答
1
在我建议从这里开始阅读之前,我遇到了同样的问题。作者介绍:“这是最近很常见的请求——如何将 CSV 文件导入 SQL Server?如何将 CSV 文件加载到 SQL Server 数据库表中?如何将逗号分隔的文件加载到 SQL Server 中?让我们快速查看解决方案。”
于 2010-04-30T07:41:58.777 回答
1
我需要每天两次将数据从 CSV 文件插入到表中。
使用 DTS 执行导入,然后安排它。
于 2010-04-30T10:57:44.970 回答
1
对于 SQL 2000,我会使用 DTS。然后,当您对它感到满意时,您可以将其作为一项工作。下面是一个很好的 Microsoft 链接,解释了如何使用它。
于 2010-04-30T11:00:13.227 回答
0
您描述了两个不同的问题:
- CSV 导入,以及
- 仅将数据提取到这 6 个字段中。
因此,将您的解决方案分为两个步骤:
- 将 CSV 导入原始暂存表,然后
- 然后从该临时表中插入您的六个“实时”字段。
第一部分有一个函数,称为BULK INSERT,语法如下所示:
BULK INSERT target_staging_table_in_database
FROM 'C:\Path_to\CSV_file.csv'
WITH
(
DATAFILETYPE = 'CHAR'
,FIRSTROW = 2
,FIELDTERMINATOR = ','
,ROWTERMINATOR = '\n'
);
调整口味,并查阅文档以获取更多选项。在进行批量插入之前,您可能还想TRUNCATE
或DELETE FROM
您的临时表,这样您就没有任何旧数据。
将信息输入数据库后,对这六个字段进行UPDATE
or操作INSERT
应该很简单。
于 2010-04-30T08:16:07.940 回答
0
您可以使用 SQL Server 集成服务 ( SSIS )。创建包是一次性的任务。下次只需运行该软件包即可。
您也可以按照丹尼尔的解释尝试批量插入。
您也可以在 SQL Server 2000 中尝试导入导出向导。
于 2010-04-30T10:41:46.873 回答