从 CSV 文件中读取并将数据插入表中
首先,你需要通过创建 SQL Server 表和 CSV 文件来准备环境。
在 SQL Server 中运行以下脚本,以在新数据库或现有数据库上创建 SQL 表。在这个例子中,我使用了我的’TrainingDB’数据库。
/* Creates table for Students.csv */
CREATE TABLE StudentDetails
(
Surname varchar(50),
Firstname varchar(50),
DateofBirth datetime,
PostCode varchar(50),
PhoneNumber varchar(50),
EmailAddress varchar(50)
)
现在使用下面的数据创建一个 CSV 文件。
姓 | 名字 | DOB | 邮编 | 电话号码 | 电子邮件地址 |
---|---|---|---|---|---|
邦加 | 弗雷德 | 24-02-1990 | SA1 5XR | 08100900647 | bonga.fd@gmail.com |
工匠 | 鳃 | 1992 年 8 月 5 日 | RMT 12TY | 08200900793 | tastey0256@yahoo.co.uk |
泰勒 | 简 | 1979 年 1 月 12 日 | PM2E 3NG | 09600900061 | jane0098@aol.com |
棕色 | 约翰 | 1986 年 6 月 10 日 | CQ7 1JK | 08200900063 | johnbrown@hotmail.com |
考克斯 | 山姆 | 18-03-1982 | STR3 9KL | 08100900349 | cox.sam@gmail.com |
刘易斯 | 标记 | 30-09-1975 | DN28 2UR | 08000900200 | m.lewis@mail.net |
考尔 | 艾哈迈德 | 26-07-1984 | NI12 8EJ | 09500900090 | kaur.ahmed@gmail.co.uk |
你可以将其复制到 Excel 中并另存为 CSV 文件。
启动 Microsoft Visual Studio 后,导航到 File - New - Project,如下所示。
在 Business Intelligence 组下,选择 Integration Services 和 Integration Services Project。输入项目名称和解决方案名称,例如“加载 CSV”。如果要创建解决方案,可以选中为解决方案创建目录框。 单击确定
在显示屏幕的右侧,在解决方案资源管理器窗口中,将默认软件包的名称更改为“将 CSV 文件加载到表中”
在屏幕左侧的 SSIS 工具栏中,将数据流拖动到控制流窗口,并将任务重命名为“加载 CSV 文件”
接下来,你需要为 CSV 文件和 SQL Server 表设置连接管理器,它们也分别称为源和目标。在屏幕底部的连接管理器下,右键单击并选择新建平面文件连接并配置平面文件连接管理器,如下所示。
输入合适的 Connection Manager 名称并指定 Students.csv 文件的文件路径。单击确定。
对于表的连接管理器,请在连接管理器窗口中再次右键单击,然后单击“新建 OLE DB 连接”。单击 New 并指定包含 StudentsDetail 表的服务器名称和数据库名称。
你可以通过单击测试连接来测试连接,然后单击确定再次单击确定。你现在应该在屏幕底部有 2 个连接管理器。
将平面文件源从 SSIS 工具箱拖到数据流窗口,并将其重命名为“CSV 文件”。
双击此源并选择 Student CSV File
连接管理器。单击屏幕左侧的列以查看文件中的列。单击确定。
然后将“OLE DB 目标”从 SSIS 工具箱拖到数据流窗口,并将其重命名为“SQL 表”。将蓝色箭头从源拖动到目标。
双击目标并配置如下所示。
单击屏幕左侧的 Mappings,确保所有字段都从源到目标正确映射。
单击确定。你的屏幕应如下图所示。
单击开始运行包。程序包完成执行后,你可以检查表以查看 CSV 文件中的数据。