日期:2014-05-18  浏览次数:20398 次

文本数据导入 sqlserver数据库表
把文本文件导入数据库表 文本文件有三列 ,比如:ID ,UserName ,Description

------解决方案--------------------
SQL code

/** 导入文本文件 */
EXEC master..xp_cmdshell 'bcp dbname..tablename in c:\DT.txt -c -Sservername -Usa -Ppassword' 

/** 导出文本文件 */
EXEC master..xp_cmdshell 'bcp dbname..tablename out c:\DT.txt -c -Sservername -Usa -Ppassword' 
或 
EXEC master..xp_cmdshell 'bcp "Select * from dbname..tablename" queryout c:\DT.txt -c -Sservername -Usa -Ppassword' 

/**导出到TXT文本,用逗号分开*/ 
exec master..xp_cmdshell 'bcp "库名..表名" out "d:\tt.txt" -c -t ,-U sa -P password' 


BULK INSERT 库名..表名 
FROM 'c:\test.txt' 
WITH ( 
FIELDTERMINATOR = ';', 
ROWTERMINATOR = '\n' 
)

------解决方案--------------------
+1
探讨
SQL code

/** 导入文本文件 */
EXEC master..xp_cmdshell 'bcp dbname..tablename in c:\DT.txt -c -Sservername -Usa -Ppassword'

/** 导出文本文件 */
EXEC master..xp_cmdshell 'bcp dbname..tablename out c:\DT.tx……

------解决方案--------------------
右击数据库,点击任务的导入数据,弹出一个对话框,点击下一步,到数据源对话框时,数据源选择平面文件,选择文件名,区域设置选择英语(美国),代码页1521,如果数据源txt第一行有列,则打钩在第一个数据行中显示列名称,可以查看左边列的选择,看看数据情况,其他的信息自己看看,需要什么就选择什么,没有的话,就点击下一步,选择目标数据源,填入对应的服务器名称,本机就写local或者127.0.0.1,再选择所要导入的是哪个数据库,点击下一步,目标选项,填写对应表,如果要插入已有得表,则选择已有得表,并在编写映射绑定相应的列,如果填写的表,数据库没有,则会自动生成新表,点击下一步,如果单纯只是导入数据的话,就点击直接运行,如果想生成SSIS的话,可以选择保存SSIS包,文件系统,选择生成的名称或者路径,点击完成就OK了,这样会生成一个SSIS对应的文件,用SSIS打开后,直接执行包得话,就可以再次实现导入数据,而无需再次配置,可能写的不是太清楚,不过希望对你有帮助!!