如何将多个csv文件导入到SqlServer中
发布网友
发布时间:2022-04-19 17:42
我来回答
共2个回答
热心网友
时间:2022-04-09 16:34
解决办法:
1.打开Microsoft Visual Studio.
2.文件-新建-项目-Integration Services 项目.
3.名称任意定义,在这里名称为:CsvImportSqlserver,勾选"创建解决方案的目录"
4.在"数据流"下,点击页面蓝色字母,进入编辑区.
5.选择左侧工具箱,选择"平面文件源"和"OLE DB 目标"控件拖动到编辑区.
6.选中“平面文件源”,右键选择编辑,弹出“平面文件源编辑器”窗口.
7.在“平面文件连接管理器”中,点击“新建”按钮。
8.连接管理器:ImprotFile(任意起名),在常规中,浏览要导入的csv文件的所在路径(如:test_1.csv)。
注意:勾选(在第一个数据行中显示列名称)
9.默认“列”的设置,在“高级”中,匹配数据类型一致。
目标数据库中,int类型的字段-〉在高级中,设置“四字节带符号的整数 [DT_I4]”
varchar类型的字段-〉设置“字符串 [DT_STR]”注意:类型的大小。
smallint类型字段-〉设置“双字节带符号的整数 [DT_I2]”
decimal类型的字段-〉设置“双精度浮点数 [DT_R8]”
10.点击确定,选中“平面文件源”,右键“添加路径”,连接自:平面文件源;连接至:OLE DB目标
输出:平面文件源 ; 输入:OLE DB目标输入。
11.设置后,在编辑区发现有个(平面文件源-〉OLE DB目标输入)的指向箭头。
12.接下来,选中(OLE DB目标),右键编辑。
13.新建OLE DB 连接管理器。
14.服务器名:IP地址(172.26.36.6)
15.在选择或输入一个数据库名中:选择要导入到的数据库(如:DW)
16.点击“测试连接”,提示连接成功,确定并关闭窗口。
17.接下来,在“数据访问模式”中:表或视图。
18.表或视图名称:数据库中相对应的表:test库。
19.在“应射”中,设置逐个字段一一映射。
20.点击确定。
21.点击F5,进行调试,看数据是否在正确导入。
(如果报错,重新设置数据类型)
22.点击“控制流”,选中控件Foreach 循环容器,拖到编辑区。
23.把“数据流任务”放入“Foreach 循环容器”中
24.选中“Foreach 循环容器”,右键编辑。
25.在“集合”选项-枚举器配置,选择csv文件所在的文件夹。
26.文件名以正则表达式的方式输入,如(test_*.csv)
27.变量映射:在变量列下拉项中,点击“新建变量”,名称:var_test,其他默认,直接点击确定。
28.在编辑区左下脚-连接管理器中,选中“ImprotFile”右键属性;
29.点击expressions后面的编辑按钮,属性:ConnectionString,表达式:选择“var_test”变量,并把它拖到“表达式”区域。
30.确定后,开始F5,开始导入集合中所有csv文件.
31.至此,所有设置完毕。
同理,要想把数据库表,导出csv文件,也一样道理。
足球 另:当导入一个csv文件时,可以根据sqlserver导入导出向导就可以。
具体操作如下:
1.选中数据库test,右键-任务-导入数据。
2.点击“下一步”按钮
3.数据源选择:平面文件源
4.其他选项,与上述一致。(数据类型一定要匹配正确)
5.下一步,输入正确的服务器名称,数据库名称。
6.在“表和视图”中,“源”与“目标”的表要映射正确。
7.下一步,选择“立即运行”。
8.点击完成,开始导入。
热心网友
时间:2022-04-09 17:52
1.打开Microsoft Visual Studio.
2.文件-新建-项目-Integration Services 项目.
3.名称任意定义,在这里名称为:CsvImportSqlserver,勾选"创建解决方案的目录"
4.在"数据流"下,点击页面蓝色字母,进入编辑区.
5.选择左侧工具箱,选择"平面文件源"和"OLE DB 目标"控件拖动到编辑区.
6.选中“平面文件源”,右键选择编辑,弹出“平面文件源编辑器”窗口.
7.在“平面文件连接管理器”中,点击“新建”按钮。
8.连接管理器:ImprotFile(任意起名),在常规中,浏览要导入的csv文件的所在路径(如:test_1.csv)。
注意:勾选(在第一个数据行中显示列名称)
9.默认“列”的设置,在“高级”中,匹配数据类型一致。
目标数据库中,int类型的字段-〉在高级中,设置“四字节带符号的整数 [DT_I4]”
varchar类型的字段-〉设置“字符串 [DT_STR]”注意:类型的大小。
smallint类型字段-〉设置“双字节带符号的整数 [DT_I2]”
decimal类型的字段-〉设置“双精度浮点数 [DT_R8]”
10.点击确定,选中“平面文件源”,右键“添加路径”,连接自:平面文件源;连接至:OLE DB目标
输出:平面文件源 ; 输入:OLE DB目标输入。
11.设置后,在编辑区发现有个(平面文件源-〉OLE DB目标输入)的指向箭头。
12.接下来,选中(OLE DB目标),右键编辑。
13.新建OLE DB 连接管理器。
14.服务器名:IP地址(172.26.36.6)
15.在选择或输入一个数据库名中:选择要导入到的数据库(如:DW)
16.点击“测试连接”,提示连接成功,确定并关闭窗口。
17.接下来,在“数据访问模式”中:表或视图。
18.表或视图名称:数据库中相对应的表:test库。
19.在“应射”中,设置逐个字段一一映射。
20.点击确定。
21.点击F5,进行调试,看数据是否在正确导入。
(如果报错,重新设置数据类型)
22.点击“控制流”,选中控件Foreach 循环容器,拖到编辑区。
23.把“数据流任务”放入“Foreach 循环容器”中
24.选中“Foreach 循环容器”,右键编辑。
25.在“集合”选项-枚举器配置,选择csv文件所在的文件夹。
26.文件名以正则表达式的方式输入,如(test_*.csv)
27.变量映射:在变量列下拉项中,点击“新建变量”,名称:var_test,其他默认,直接点击确定。
28.在编辑区左下脚-连接管理器中,选中“ImprotFile”右键属性;
29.点击expressions后面的编辑按钮,属性:ConnectionString,表达式:选择“var_test”变量,并把它拖到“表达式”区域。
30.确定后,开始F5,开始导入集合中所有csv文件.
31.至此,所有设置完毕。
同理,要想把数据库表,导出csv文件,也一样道理。
足球 另:当导入一个csv文件时,可以根据sqlserver导入导出向导就可以。