【IT168技术文档】
怎么样才能通过SQL语句导入将csv文件导入SQL Server数据库呢?
如果csv文件中是完整的表,可以用下面的方法来实现。
EXEC master..xp_cmdshell 'bcp 数据库名..表名 in 文件全路径 -c -t, -S 服务名 -U 用户名(要有写入权限) -P 密码'
注意,文件中不能包括字段名的表示。就是说文件中只有数据。
接下来还要看扩展文件还在不在,如果在的话,执行下面的语句
Use Master Exec sp_addextendedproc N’xp_cmdshell’, N’xplog70.dll’ Go
然后再执行刚才的那个命令。
如果文件不在了,需要去找个xplog70.dll文件拷到c:\winnt\system32下。
由于这个命令的使用涉及到数据库安全问题,建议导入信息结束后恢复原有的设置。(如果原来没有xplog70.dll最好再删掉。)
禁用xp_cmdshell的语句如下:
Use Master Exec sp_dropextendedproc N’xp_cmdshell’ Go
补充:
你也可以尝试在控制台中执行这一段:
bcp text..a in D:\1.csv -c -t, -S FPRINT-SERVER -U FPRINT-SERVER -P 1234
如果用户没有管理员权限的话最好改为管理员。