文本、Excel、Access数据导入SQL Server2000的方法
windows网络编程技术,roche减速机,星帝猎情录
如下所示:
"awu","102300","zx240-3","2609997000","2609997000","3016924000","","3091775000","","","qcr0000285",""
"aye","001800","zx60","2609997000","2609997000","3016924000","","","","","",""
虽然项目开发了应用程序,解析类似的文本文件,并将记录存储到数据库中,但效率显然不及批量导入。为了节约时间,从9:00pm开始,决定先尝试将文本文件导入excel,再将excel导入sql server2000。(因为之前部分备份工作便是该操作的逆向方式)。
打开excel2007,再选择打开数据源的文本文件,系统自动进入“文本导入向导”。
第一步,选择字段分割方式,本例采用“分割符号”,适当调整文本文件编码方式(utf-8、ansi等),已保证导入数据不是乱码。
第二步,选择分割符号,文本识别符号(太棒了!当初还在考虑双引号如何去掉)。
第三步,设置每列数据类型(常规、文本、日期)。点击完成!
稍微提示下两个细节问题:
1.如示例数据第二行第二字段“001800”,如果在导入第三步按“常规”类型导入,则前端“00”会被去掉,类似数字的处理办法,此时如需保留,请选择“文本”类型。
2.有时源数据中难免存在格式问题,特别是导入强约束的数据库表单时就会报错。这时就得根据报错信息回头检查excel中的数据。测试中遇到了逗号出现在了“,”双引号内部,导致数据无法导入等情况。多个双引号现象:““”等等。
3.数据导入excel后,最好在第一行前插入一行,输入数据库对应表单的字段名。不设此行能否实行,还请各位实践证明:)
介于上述的第二问题,所以推荐先将文本文件导入access,通过access导入sql server。这样的好处在于access的数据类型与sql server更类似,这样当文本文件导入access时会严格检验数据的合法性,避免后续的诸多麻烦。
导入方法也很类似,简单介绍下:打开access2007,选择外部数据-文本文件,选中文本文件后,同样出现“导入文本向导”。
第一步,选择固定宽度或分隔符。
第二步,选择分割符类型和文本标识符,可选项“第一行包含字段名称”。
第三步,设置字段名和字段类型(最有价值的一项)。
第四步,是否建立主键。
第五步,完成!
稍微提示一个细节问题:
某些文本文件在access导入预览时,首行前端会有一个乱码。没关系,打开源文本文件,在首行开头回车,建立一个空行即可。导入数据后,在access表中再次删除首行记录。
最后通过sql server企业管理器,选中需重新导入的表单,右键选择导入数据。继续下一步吧:)sql server导入数据时也会严格匹配记录的数据类型是否匹配,如果不匹配,则此批次的数据导入均失败。
ok,先分享这些吧。更多技巧,欢迎大家一起来丰富。office系列的活用和ms软件间的巧用真是很强大,需要慢慢挖掘:) sql server导入数据的更多技巧,我也需要再多学习下!
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!!
点击进行留言回复
相关文章:
-
-
-
sql某个日期是当年的第几周
/* *周一作为一周的开始 *当年的1月1号所在的周算作第一周 */ CREATE function GetWeekIndexFirstDate ( @...
[阅读全文]
-
-
数据库SQL---范式
1、数据冗余导致的问题:冗余存储、更新异常、插入异常、删除异常。 2、函数依赖:一种完整性约束。 在关系模式r(R)中,α属于R,β属于R。 1)α函数...
[阅读全文]
-
-
数据库SQL---查询
1、查询所有列 select *from emp;--*表示所有的,from emp表示从emp表中查询。 2、查询指定列 select empno,e...
[阅读全文]
-
-
-
-
网友评论